Ulasan: Appery.io memasangkan pembangun aplikasi mudah alih dengan perkhidmatan belakang

Appery.io adalah platform pengembangan mudah alih berasaskan web dan hibrid berasaskan cloud yang cukup mampu dengan reka bentuk visual dan alat pengaturcaraan dalam talian, serta perkhidmatan back-end bersepadu. Anda boleh menganggapnya sebagai persilangan antara pembangun aplikasi dan MBaaS (hujung belakang mudah alih sebagai perkhidmatan).

Seperti yang dapat kita lihat dalam Rajah 1 di bawah ini, pembangun aplikasi Appery.io menghasilkan kod HTML5, jQuery Mobile, dan Apache Cordova, dan pelayan binaan Appery.io menghasilkan aplikasi iOS, Android, Windows Phone, dan HTML5. Appery.io MBaaS menyediakan hosting, pangkalan data NoSQL MongoDB, pemberitahuan push, kod pelayan JavaScript, dan proksi yang selamat. 

Appery.io pada dasarnya boleh bercakap dengan mana-mana API REST, sama ada syarikat itu telah membina antara muka atau tidak. Mengikat antara muka REST yang sudah siap ke perkhidmatan adalah beberapa minit lagi. Membangunkan antara muka REST sendiri memerlukan sedikit lebih lama dan memerlukan mengetahui lebih banyak lagi, tetapi itu bukan pekerjaan yang besar.

Pembina aplikasi dalam talian

Pembangun aplikasi Appery.io mempunyai tab untuk tetapan aplikasi, model dan penyimpanan anda (Gambar 2), halaman anda semasa anda membuatnya, dialog, templat, tema, CSS, perkhidmatan apa pun yang anda tentukan, JavaScript anda, dan komponen khusus yang anda tentukan. Pembina (Gambar 3) menggunakan metafora reka bentuk WYSIWYG dengan palet lebih daripada 25 kawalan, termasuk untuk perkhidmatan luaran seperti Peta Google dan Vimeo, dan ia memaparkan lembaran harta untuk setiap item. Anda dapat beralih dari tampilan reka bentuk ke tampilan kode sumber untuk melihat HTML, CSS, JavaScript, dan kod khusus peranti yang dihasilkan: Java untuk Android, Objective-C untuk iOS, dan XAML yang disokong oleh C # untuk Windows Phone.

Anda boleh menguji aplikasi HTML5 semasa anda pergi, di penyemak imbas desktop anda (Gambar 4) dan di penyemak imbas telefon dan tablet anda; semua yang tidak bergantung pada Cordova akan berfungsi. Untuk menguji kod Cordova anda (misalnya, untuk menggunakan keupayaan peranti asli atau mendapatkan mesej tolak), anda membina aplikasi anda, memuat turunnya ke peranti anda, dan jalankan di sana. Untuk kemudahan, Appery.io akan memaparkan kod QR untuk aplikasi HTML5 dan binari anda sehingga anda dapat memuat turunnya terus ke peranti anda. Untuk lebih banyak kemudahan, anda boleh memasang shell Appery.io Native Test App pada peranti anda dan menunjukkannya pada kod anda.

Secara amnya, saya mendapati pembangun aplikasi mudah dipelajari dan digunakan. Appery.io telah melakukan tugas yang baik dalam merancang IDEnya agar pembangun mudah alih biasanya tidak akan terkejut dengan apa yang mereka dapat.

Anda boleh melihat kod sumber yang dihasilkan Appery.io dalam talian, atau melihatnya di luar talian selepas memuat turun projek. Saya tidak menghadapi masalah membaca kod HTML5 / CSS / JavaScript, tetapi saya sudah biasa dengan Underscore, jQuery, dan jQuery Mobile. Appery.io mengumpulkan sekitar 17 perpustakaan JavaScript, tidak termasuk widget. Adakah itu gemuk? Baiklah, ya. Tetapi pada peranti moden, ia tidak menjadi masalah.

Kod asli khusus peranti untuk Android, iOS, dan Windows Phone tidak menarik. Appery.io bergantung pada Cordova untuk cangkang asalnya, dan semua aplikasi khusus berfungsi dalam kawalan penyemak imbas terbenam.

Senang Appery.io mempunyai perkhidmatan pembangun dan membina berasaskan awan sendiri. Ditambah dengan IDE berasaskan penyemak imbas, ini bermaksud bahawa pembangun mudah alih tidak perlu memiliki banyak komputer atau beberapa VM untuk membuat aplikasi asli, dan mereka tidak perlu mengekalkan banyak SDK dan IDE asli. Sudah tentu, jika anda memutuskan untuk mengeksport aplikasi yang dihasilkan Appery.io dan mengekalkannya sendiri (contohnya, kerana anda tidak mahu meneruskan langganan anda), anda memerlukan SDK dan IDE asli, atau perkhidmatan PhoneGap Build dari Adobe.

Perkhidmatan belakang

Seperti yang telah kami sebutkan sebelumnya, Appery.io memiliki fitur MBaaS yang meliputi hosting, pangkalan data NoSQL (MongoDB), pemberitahuan push, kod pelayan JavaScript, dan REST API yang selamat.

Appery.io membenarkan hosting HTML ke awannya sendiri, ke Heroku, dan (secara manual) kepada penyedia hosting pihak ketiga. Di awan Appery.io sendiri, anda boleh menggunakan nama domain app.appery.io yang disediakan atau nama domain atau subdomain anda sendiri, dengan andaian anda mempunyai akses ke tetapan DNS anda dan tahu bagaimana mengubahnya.

Untuk menjadi tuan rumah di Heroku, dengan andaian anda mempunyai akaun heroku.com, anda perlu log masuk, memberi kebenaran kepada apperyio di Heroku, kemudian buat aplikasi Heroku dari sisi Appery.io. Hanya aplikasi Web mudah alih yang dapat diterbitkan ke Heroku, bukan aplikasi Cordova.

Anda boleh menerbitkan aplikasi hibrid ke Google Play, iOS App Store, dan Windows Store. Appery.io dapat membina binari untuk anda di awannya.

Pangkalan data Appery.io menggunakan MongoDB, antara muka Web (Gambar 2), dan REST API. Setelah anda menentukan jadual (koleksi alias) dan lajur, anda boleh merujuknya dari bahagian lain pembangun aplikasi Appery.io, membuat sambungan dan pemetaan secara grafik untuk menghasilkan kod CRUD secara automatik. Setiap pangkalan data mempunyai tiga koleksi yang telah ditentukan - Pengguna, Fail, dan Perangkat - yang semuanya mempunyai lajur yang anda harapkan, dan anda dapat menambahkan koleksi sesuka hati.

Appery.io menggunakan koleksi Peranti dari pangkalan data terpilih untuk mengawal peranti yang akan menerima pemberitahuan tolak; ini mendukung pemberitahuan push untuk Android dan iOS, dan pemberitahuan push yang diberikan hanya dapat satu atau yang lain. Anda boleh menapis peranti untuk menekan tertentu dengan pembangun pertanyaan atau rentetan pertanyaan. Antara penapis yang mungkin berlaku ialah geolokasi (misalnya, semua peranti dalam jarak dua batu dari lokasi tertentu). Penapis lain termasuk saluran, yang boleh anda simpan dalam pangkalan data dan tetapkan mengikut kehendak anda, dan ID peranti. Appery.io mendorong pemberitahuan melalui perkhidmatan asli Google dan Apple, jadi anda perlu mendaftar untuk API tersebut.

Appery.io menjalankan kod pelayan JavaScript menggunakan enjin V8, walaupun tidak menggunakan kerangka Node.js. Seperti yang anda harapkan dengan menggunakan API REST, kod JavaScript belakang dapat berkomunikasi dengan aplikasi dengan paket permintaan dan respons, dan itu membentuk respons sebagai JSON. Sebagai contoh, kod berikut menentukan tindak balas "Hello" dengan masa pelayan semasa:

// get name from service, name is entered in the app

var name = request.get("name");

// get and format the time

var now = moment().format("dddd, MMMM D YYYY, h:mm:ss a");

// put together the greeting string

var greetingString = "Hello " + name + ". It is " + now;

// format as JSON and return the response

response.success(JSON.stringify({

   greeting: greetingString

}), "application/json");

Appery.io menerapkan Secure REST menggunakan pangkalan data dan saluran proksi khasnya untuk memastikan kunci rahsia, bukti kelayakan, dan data sensitif lain selamat daripada dibuka oleh pengguna aplikasi. Pada asasnya, anda menyimpan data rahsia anda dalam pangkalan data dengan nama utama, anda membuat saluran proksi untuk menggantikan nama kunci dengan data rahsia, dan dalam aplikasinya, anda bekerja dengan nama kunci dan menentukan saluran proksi yang akan digunakan. Kemudian aplikasi memanggil nama utama, dan dalam proksi, mereka digantikan dengan data, dan perkhidmatan tersebut menerima data sebenar. Pengguna aplikasi dapat mencari nama utama dan ID saluran proksi, tetapi mereka tidak mempunyai akses ke data rahsia.

Antara muka luaran

Pada penulisan ini, Appery.io mempunyai pemalam untuk pembayaran Stripe; Mel SendGrid; Pemesejan Twilio; Berita USA Today; Rangkaian sosial Facebook, Foursquare, dan LinkedIn; Penyimpanan kotak; Pengurusan identiti OAuth dan Auth0; GitHub; Pengimejan dinamik Sirv; dan tema UI moden dan rata. Ia juga mempunyai sokongan terpadu untuk Salesforce.com.

Sekiranya perkhidmatan luaran yang anda perlukan belum mempunyai pemalam, semuanya tidak hilang. Sekiranya ia merupakan perkhidmatan REST, Appery.io membolehkan anda menyambung ke sana, ambil sampel paket jawapan, dan gunakan Visual Data Binding untuk memetakan output perkhidmatan ke aplikasi anda.

Exadel, syarikat di belakang Appery.io, menjual perkhidmatan pendamping bernama RESTXpress. RESTXpress memudahkan untuk membungkus pangkalan data SQL / JDBC dan perkhidmatan Web berasaskan SOAP dengan antara muka REST. RESTXpress boleh dipasang di pelayan aplikasi Java seperti Tomcat, dan dilesenkan secara berasingan.

Sokongan luar talian

Semasa menggunakan Model dan Penyimpanan Appery.io, meneruskan keadaan aplikasi Web ke storan tempatan adalah tingkah laku lalai. Data akan disimpan dalam simpanan tempatan dan tersedia selepas dimulakan semula. Sebagai pilihan, anda boleh menambahkan kod anda sendiri (JavaScript) untuk menyesuaikan kemampuan ini sebanyak yang diperlukan. Sekiranya anda memerlukan lebih banyak storan tempatan daripada yang dapat disimpan dalam penyimpanan pasangan kunci / nilai WebView HTML5, anda dapat menggunakan org.apache.cordova.fileAPI untuk mengakses sistem fail peranti atau WebSQL untuk mengakses pangkalan data SQLite tempatan.

Model dan Penyimpanan Appery.io membantu membiarkan aplikasi berjalan di luar talian kerana membolehkan pembangun menentukan model aplikasi pada klien (storan tempatan). Kod khusus (JavaScript) dapat digunakan untuk penyesuaian lebih lanjut. Exadel merancang untuk menambahkan lebih banyak sokongan untuk menjadikannya lebih mudah. Menurut syarikat itu, Model dan Penyimpanan hanyalah langkah pertama.

Penyegerakan pangkalan data mudah alih dengan pelayan dapat dilakukan dengan Appery.io, kerana anda dapat memprogram klien dan pelayan, tetapi pasti tidak automatik. Biasanya anda akan menyimpan perubahan pada pasangan kunci / nilai, atau anda akan mengekalkan pangkalan data SQLite tempatan, mengaksesnya melalui pemalam Cordova, dan mendorong catatan kotor kembali ke pangkalan data pelayan semasa disambungkan.

Kesimpulan dan perbandingan

Oleh kerana Appery.io merangkumi ruang pengembangan aplikasi MBaaS dan mudah alih, anda ingin membandingkannya dengan produk dalam kedua-dua kategori. Dalam sapuan kuas yang luas, saya mendapati Appery.io (skor keseluruhan 8.2) kurang menarik daripada AnyPresence (skor keseluruhan 9.1), yang menghasilkan lebih banyak langkah dan menghasilkan aplikasi asli dan API mudah alih. AnyPresence juga mempunyai antara muka pangkalan data perusahaan yang penting.

Saya juga mendapati Appery.io kurang berkemampuan daripada FeedHenry (8.6), yang mempunyai sokongan perusahaan yang lebih baik melalui penggunaan kerangka Node.js, dan Alpha Anywhere (8.8), yang mempunyai integrasi pangkalan data yang sangat baik dan sokongan penuh operasi luar talian, data mudah alih penyegerakan, dan penyelesaian konflik data.

Saya menyukai Appery.io lebih baik daripada MBaaS Parse (7.6) dan pembangun aplikasi / MBaaS Appcelerator (7.8), dan saya dapati kira-kira setanding dengan Kinvey (8.3), walaupun Kinvey menawarkan lebih banyak cara sokongan analisis dan pangkalan data perusahaan .

Kad Markah Keupayaan (25%) Integrasi (25%) Sokongan pelanggan (20%) IDE (20%) Nilai (10%) Markah keseluruhan
Appery.io 8 8 8 9 8 8.2