Ulasan: Appery.io memasangkan pembuat aplikasi seluler dengan layanan back-end

Appery.io adalah Web seluler berbasis cloud dan platform pengembangan seluler hybrid yang cukup mumpuni dengan desain visual online dan alat pemrograman, serta layanan back-end terintegrasi. Anda dapat menganggapnya sebagai persilangan antara pembuat aplikasi dan MBaaS (back end seluler sebagai layanan).

Seperti yang dapat kita lihat pada Gambar 1 di bawah, pembuat aplikasi Appery.io menghasilkan kode HTML5, jQuery Mobile, dan Apache Cordova, dan server build Appery.io menghasilkan aplikasi iOS, Android, Windows Phone, dan HTML5. MBaaS Appery.io menyediakan hosting, database MongoDB NoSQL, pemberitahuan push, kode server JavaScript, dan proxy yang aman. 

Appery.io pada dasarnya dapat berbicara dengan REST API apa pun, baik perusahaan telah membuat antarmuka atau tidak. Mengikat antarmuka REST prebuilt ke layanan hanya dalam beberapa menit. Membangun antarmuka REST sendiri membutuhkan waktu sedikit lebih lama dan membutuhkan lebih banyak pengetahuan, tetapi ini bukan pekerjaan besar.

Pembuat aplikasi online

Pembuat aplikasi Appery.io memiliki tab untuk pengaturan aplikasi, model dan penyimpanan Anda (Gambar 2), halaman Anda saat Anda membuatnya, dialog, templat, tema, CSS, layanan apa pun yang Anda tentukan, JavaScript Anda, dan komponen khusus apa pun yang Anda menetapkan. Builder (Gambar 3) menggunakan metafora desain WYSIWYG dengan palet lebih dari 25 kontrol, termasuk untuk layanan eksternal seperti Google Maps dan Vimeo, dan ini menampilkan lembar properti untuk setiap item. Anda dapat beralih dari tampilan desain ke tampilan kode sumber untuk melihat HTML, CSS, JavaScript, dan kode khusus perangkat apa pun yang Anda buat: Java untuk Android, Objective-C untuk iOS, dan XAML yang didukung oleh C # untuk Windows Phone.

Anda dapat menguji aplikasi HTML5 saat Anda pergi, di browser desktop Anda (Gambar 4) dan di browser ponsel dan tablet Anda; segala sesuatu yang tidak bergantung pada Cordova akan berfungsi. Untuk menguji kode Cordova Anda (misalnya, untuk menggunakan kemampuan perangkat asli atau mendapatkan pesan push), Anda membuat aplikasi, mendownloadnya ke perangkat Anda, dan menjalankannya di sana. Untuk kenyamanan, Appery.io akan menampilkan kode QR untuk aplikasi HTML5 dan binari Anda sehingga Anda dapat mengunduhnya langsung ke perangkat Anda. Untuk kenyamanan lebih, Anda dapat menginstal shell Appery.io Native Test App di perangkat Anda dan mengarahkannya ke kode Anda.

Secara umum, menurut saya pembuat aplikasi mudah dipelajari dan digunakan. Appery.io telah berhasil merancang IDE-nya dengan baik sehingga pengembang seluler biasanya tidak akan terkejut dengan apa yang mereka dapatkan.

Anda dapat melihat kode sumber yang dihasilkan Appery.io secara online, atau Anda dapat melihatnya secara offline setelah mengunduh proyek. Saya tidak mengalami kesulitan membaca kode HTML5 / CSS / JavaScript, tetapi saya sudah terbiasa dengan Underscore, jQuery, dan jQuery Mobile. Appery.io menarik sekitar 17 pustaka JavaScript, tidak termasuk widget. Apa itu gemuk? Baiklah. Tetapi pada perangkat modern, itu bukan masalah.

Kode asli khusus perangkat untuk Android, iOS, dan Windows Phone tidak menarik. Appery.io bergantung pada Cordova untuk shell aslinya, dan ia melakukan semua pekerjaan aplikasi khusus di kontrol browser yang disematkan.

Sangat menyenangkan bahwa Appery.io memiliki pembangun dan layanan pembuatan berbasis cloud sendiri. Ditambah dengan IDE berbasis browser, ini berarti bahwa pengembang seluler tidak perlu memiliki banyak komputer atau beberapa VM untuk membuat aplikasi asli, dan mereka tidak harus mempertahankan beberapa SDK dan IDE asli. Tentu saja, jika Anda memutuskan untuk mengekspor aplikasi yang dibuat oleh Appery.io dan memeliharanya sendiri (misalnya, karena Anda tidak ingin melanjutkan langganan), Anda memerlukan SDK dan IDE asli, atau layanan PhoneGap Build dari Adobe.

Layanan back-end

Seperti yang kami sebutkan sebelumnya, Appery.io memiliki fitur MBaaS yang mencakup hosting, database NoSQL (MongoDB), notifikasi push, kode server JavaScript, dan REST API yang aman.

Appery.io mengizinkan hosting HTML ke cloud-nya sendiri, ke Heroku, dan (secara manual) ke penyedia hosting pihak ketiga. Di cloud Appery.io sendiri, Anda dapat menggunakan nama domain app.appery.io yang disediakan atau nama domain atau subdomain Anda sendiri, dengan asumsi Anda memiliki akses ke pengaturan DNS dan tahu cara mengubahnya.

Untuk menghosting di Heroku, dengan asumsi Anda memiliki akun heroku.com, Anda harus masuk, mengotorisasi apperyio di Heroku, lalu membuat aplikasi Heroku dari sisi Appery.io. Hanya aplikasi Web seluler yang dapat dipublikasikan ke Heroku, bukan aplikasi Cordova.

Anda dapat menerbitkan aplikasi hybrid ke Google Play, iOS App Store, dan Windows Store. Appery.io dapat membuat biner untuk Anda di cloud-nya.

Database Appery.io menggunakan MongoDB, antarmuka Web (Gambar 2), dan REST API. Setelah Anda menentukan tabel (alias koleksi) dan kolom, Anda dapat merujuknya dari bagian lain dari pembuat aplikasi Appery.io, membuat koneksi dan pemetaan secara grafis untuk menghasilkan kode CRUD secara otomatis. Setiap database memiliki tiga koleksi yang telah ditentukan sebelumnya - Pengguna, File, dan Perangkat - yang semuanya secara kasar memiliki kolom yang Anda harapkan, dan Anda dapat menambahkan koleksi sesuka hati.

Appery.io menggunakan kumpulan Perangkat dari database yang dipilih untuk mengontrol perangkat yang akan menerima pemberitahuan push; ini mendukung pemberitahuan push untuk Android dan iOS, dan pemberitahuan push yang diberikan hanya bisa ke satu atau yang lain. Anda dapat memfilter perangkat untuk dorongan tertentu dengan pembuat kueri atau string kueri. Di antara filter yang memungkinkan adalah geolokasi (misalnya, semua perangkat dalam jarak dua mil dari lokasi tertentu). Filter lainnya termasuk saluran, yang dapat Anda simpan dalam database dan tetapkan sesuai keinginan, dan ID perangkat. Appery.io melakukan pemberitahuan push melalui layanan Google dan Apple asli, jadi Anda harus terdaftar untuk API tersebut.

Appery.io menjalankan kode server JavaScript menggunakan mesin V8, meskipun tidak menggunakan kerangka kerja Node.js. Seperti yang Anda harapkan, mengingat REST API, kode JavaScript back-end berkomunikasi dengan aplikasi dengan paket permintaan dan respons, dan memformat respons sebagai JSON. Misalnya, kode berikut mendefinisikan respons "Halo" dengan waktu server saat ini:

// 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 mengimplementasikan Secure REST menggunakan database dan saluran proxy khusus untuk menjaga kunci rahasia, kredensial, dan data sensitif lainnya agar tidak dibuka oleh pengguna aplikasi. Pada dasarnya, Anda menyimpan data rahasia Anda dalam database di bawah nama kunci, Anda membuat saluran proxy untuk mengganti nama kunci dengan data rahasia, dan di aplikasi, Anda bekerja dengan nama kunci dan menentukan saluran proxy yang akan digunakan. Kemudian aplikasi memanggil nama-nama kunci, dan dalam proxy, mereka diganti dengan data, dan layanan menerima data nyata. Pengguna aplikasi dapat menemukan nama kunci dan ID saluran proxy, tetapi mereka tidak memiliki akses ke data rahasia.

Antarmuka eksternal

Saat artikel ini ditulis, Appery.io memiliki plug-in untuk pembayaran Stripe; SendGrid mail; Perpesanan Twilio; Berita USA Today; Facebook, Foursquare, dan LinkedIn jejaring sosial; Penyimpanan kotak; Manajemen identitas OAuth dan Auth0; GitHub; Pencitraan dinamis Sirv; dan tema UI modern dan datar. Ini juga memiliki dukungan bawaan untuk Salesforce.com.

Jika layanan eksternal yang Anda butuhkan belum memiliki plug-in, semuanya tidak hilang. Jika ini adalah layanan REST, Appery.io memungkinkan Anda menyambungkannya, mengambil paket respons sampel, dan menggunakan Visual Data Binding untuk memetakan output layanan ke aplikasi Anda.

Exadel, perusahaan di balik Appery.io, menjual layanan pendamping bernama RESTXpress. RESTXpress memudahkan untuk membungkus database SQL / JDBC dan layanan Web berbasis SOAP dengan antarmuka REST. RESTXpress dapat diinstal di server aplikasi Java seperti Tomcat, dan berlisensi terpisah.

Dukungan offline

Saat menggunakan Model dan Storage Appery.io, mempertahankan status aplikasi Web ke penyimpanan lokal adalah perilaku default. Data akan disimpan di penyimpanan lokal dan tersedia setelah restart berikutnya. Secara opsional, Anda dapat menambahkan kode Anda sendiri (JavaScript) untuk menyesuaikan kemampuan ini sesuai kebutuhan. Jika Anda membutuhkan lebih banyak penyimpanan lokal daripada yang dapat disimpan dalam penyimpanan pasangan kunci / nilai WebView HTML5, Anda dapat menggunakan org.apache.cordova.fileAPI untuk mengakses sistem file perangkat atau WebSQL untuk mengakses database SQLite lokal.

Model dan Penyimpanan Appery.io membantu dengan membiarkan aplikasi berjalan offline karena memungkinkan pengembang untuk menentukan model aplikasi pada klien (penyimpanan lokal). Kode kustom (JavaScript) dapat digunakan untuk kustomisasi lebih lanjut. Exadel berencana untuk menambahkan lebih banyak dukungan agar lebih mudah. Menurut perusahaan, Model dan Penyimpanan hanyalah langkah pertama.

Sinkronisasi database seluler dengan server dapat dilakukan dengan Appery.io, karena Anda dapat memprogram klien dan server, tetapi ini jelas tidak otomatis. Biasanya Anda akan menyimpan perubahan dalam pasangan kunci / nilai, atau Anda akan mempertahankan database SQLite lokal, mengaksesnya melalui plug-in Cordova, dan mendorong data kotor kembali ke database server saat terhubung.

Kesimpulan dan perbandingan

Karena Appery.io menjangkau MBaaS dan ruang pengembangan aplikasi seluler, Anda ingin membandingkannya dengan produk di kedua kategori. Dalam sapuan kuas yang luas, saya menemukan Appery.io (skor keseluruhan 8.2) kurang menarik daripada AnyPresence (skor keseluruhan 9.1), yang bekerja ekstra dan menghasilkan aplikasi asli dan API seluler. AnyPresence juga memiliki antarmuka database perusahaan yang penting.

Saya juga menemukan Appery.io kurang mampu daripada FeedHenry (8.6), yang memiliki dukungan perusahaan lebih baik melalui penggunaan kerangka kerja Node.js, dan Alpha Anywhere (8.8), yang memiliki integrasi database yang sangat baik dan dukungan penuh untuk operasi offline, data seluler sinkronisasi, dan resolusi konflik data.

Saya menyukai Appery.io lebih baik daripada MBaaS Parse (7.6) dan pembuat aplikasi / MBaaS Appcelerator (7.8), dan menurut saya kira-kira sebanding dengan Kinvey (8.3), meskipun Kinvey menawarkan lebih banyak cara analitik dan dukungan database perusahaan .

Kartu catatan angka Kemampuan (25%) Integrasi (25%) Dukungan klien (20%) IDE (20%) Nilai (10%) Skor keseluruhan
Appery.io 8 8 8 9 8 8.2