Προγραμματισμός

Κριτική: Το Appery.io συνδυάζει το εργαλείο δημιουργίας εφαρμογών για κινητά με υπηρεσίες υποστήριξης

Το Appery.io είναι μια αρκετά ικανή πλατφόρμα ανάπτυξης Ιστού για κινητά και υβριδική κινητή πλατφόρμα με διαδικτυακά οπτικά εργαλεία σχεδιασμού και προγραμματισμού, καθώς και ολοκληρωμένες υπηρεσίες back-end. Μπορείτε να το θεωρήσετε ως διασταύρωση μεταξύ ενός δημιουργού εφαρμογών και ενός MBaaS (κινητό back-end ως υπηρεσία).

Όπως μπορούμε να δούμε στο Σχήμα 1 παρακάτω, το πρόγραμμα δημιουργίας εφαρμογών Appery.io δημιουργεί κώδικα HTML5, jQuery Mobile και Apache Cordova και ο διακομιστής Appery.io δημιουργεί εφαρμογές iOS, Android, Windows Phone και HTML5. Το Appery.io MBaaS παρέχει φιλοξενία, μια βάση δεδομένων NoSQL MongoDB, ειδοποιήσεις push, κώδικα διακομιστή JavaScript και έναν ασφαλή διακομιστή μεσολάβησης.

Το Appery.io μπορεί να μιλήσει ουσιαστικά σε οποιαδήποτε REST API, ανεξάρτητα από το αν η εταιρεία έχει προκατασκευάσει τη διεπαφή. Η σύνδεση μιας προκαθορισμένης διεπαφής REST σε μια υπηρεσία είναι θέμα λίγων λεπτών. Η οικοδόμηση της διεπαφής REST μόνοι σας παίρνει λίγο περισσότερο και απαιτεί να μάθετε περισσότερα, αλλά δεν είναι μεγάλη δουλειά.

Δημιουργία εφαρμογών στο διαδίκτυο

Το εργαλείο δημιουργίας εφαρμογών Appery.io διαθέτει καρτέλες για τις ρυθμίσεις της εφαρμογής, το μοντέλο και τον αποθηκευτικό σας χώρο (Εικόνα 2), τις σελίδες σας καθώς τις δημιουργείτε, διαλόγους, πρότυπα, θέματα, CSS, οποιεσδήποτε υπηρεσίες ορίζετε, το JavaScript και τυχόν προσαρμοσμένα στοιχεία που καθορίζω. Το πρόγραμμα δημιουργίας (Σχήμα 3) χρησιμοποιεί μια σχεδίαση WYSIWYG με μια παλέτα περισσότερων από 25 στοιχείων ελέγχου, συμπεριλαμβανομένων για εξωτερικές υπηρεσίες όπως οι Χάρτες Google και το Vimeo, και εμφανίζει ένα φύλλο ιδιοτήτων για κάθε στοιχείο. Μπορείτε να αλλάξετε από προβολή σχεδίασης σε προβολή πηγαίου κώδικα για να δείτε τον δημιουργημένο HTML, CSS, JavaScript και οποιονδήποτε κωδικό για συγκεκριμένη συσκευή: Java για Android, Objective-C για iOS και XAML με υποστήριξη C # για Windows Phone.

Μπορείτε να δοκιμάσετε την εφαρμογή HTML5 καθώς πηγαίνετε, στο πρόγραμμα περιήγησης επιτραπέζιου υπολογιστή σας (Εικόνα 4) και στα προγράμματα περιήγησης τηλεφώνου και tablet. όλα όσα δεν εξαρτώνται από την Κόρδοβα θα λειτουργήσουν. Για να δοκιμάσετε τον κωδικό Cordova (για παράδειγμα, για να χρησιμοποιήσετε δυνατότητες εγγενών συσκευών ή να λάβετε μηνύματα push), δημιουργείτε την εφαρμογή σας, κατεβάστε την στη συσκευή σας και εκτελέστε την εκεί. Για ευκολία, το Appery.io θα εμφανίζει κωδικούς QR για την εφαρμογή HTML5 και τα δυαδικά αρχεία σας, ώστε να μπορείτε να τους κατεβάσετε απευθείας στη συσκευή σας. Για ακόμη μεγαλύτερη ευκολία, μπορείτε να εγκαταστήσετε το κέλυφος Appery.io Native Test App στη συσκευή σας και να το δείξετε στον κωδικό σας.

Σε γενικές γραμμές, βρήκα το εργαλείο δημιουργίας εφαρμογών εύκολο να μάθει και να χρησιμοποιήσει. Το Appery.io έκανε καλή δουλειά σχεδιάζοντας το IDE του, έτσι ώστε οι προγραμματιστές κινητής τηλεφωνίας να μην εκπλήσσονται συνήθως από αυτό που παίρνουν.

Μπορείτε να δείτε τον πηγαίο κώδικα που δημιουργήθηκε από το Appery.io ή να τον δείτε εκτός σύνδεσης μετά τη λήψη του έργου. Δεν είχα κανένα πρόβλημα να διαβάσω τον κώδικα HTML5 / CSS / JavaScript, αλλά ήμουν ήδη εξοικειωμένος με το Underscore, jQuery και jQuery Mobile. Το Appery.io συγκεντρώνει περίπου 17 βιβλιοθήκες JavaScript, χωρίς να υπολογίζει widget. Είναι λίπος; Λοιπον ναι. Αλλά στις σύγχρονες συσκευές, δεν είναι πρόβλημα.

Ο εγγενής κωδικός για συγκεκριμένες συσκευές για Android, iOS και Windows Phone δεν ενδιαφέρει. Το Appery.io εξαρτάται από την Cordova για το εγγενές κέλυφος του και λειτουργεί όλη η προσαρμοσμένη εφαρμογή στο ενσωματωμένο πρόγραμμα περιήγησης.

Είναι ωραίο το Appery.io να διαθέτει τη δική του υπηρεσία κατασκευής και κατασκευής cloud. Σε συνδυασμό με το IDE που βασίζεται στο πρόγραμμα περιήγησης, αυτό σημαίνει ότι οι προγραμματιστές κινητής τηλεφωνίας δεν χρειάζεται να διαθέτουν πολλούς υπολογιστές ή πολλά VM για τη δημιουργία εγγενών εφαρμογών και δεν χρειάζεται να διατηρούν πολλά εγγενή SDK και IDE. Φυσικά, εάν αποφασίσετε να εξαγάγετε την εφαρμογή που δημιουργήθηκε από το Appery.io και να τη διατηρήσετε εσείς (για παράδειγμα, επειδή δεν θέλετε να συνεχίσετε τη συνδρομή σας), θα χρειαστείτε τα εγγενή SDK και IDE ή την υπηρεσία PhoneGap Build από Πλίθα.

Υπηρεσίες υποστήριξης

Όπως αναφέραμε νωρίτερα, το Appery.io διαθέτει δυνατότητα MBaaS που περιλαμβάνει φιλοξενία, βάση δεδομένων NoSQL (MongoDB), ειδοποιήσεις push, κώδικα διακομιστή JavaScript και ασφαλή REST API.

Το Appery.io επιτρέπει τη φιλοξενία HTML στο δικό της cloud, στο Heroku και (χειροκίνητα) σε τρίτους παρόχους φιλοξενίας. Στο cloud του Appery.io, μπορείτε να χρησιμοποιήσετε είτε το παρεχόμενο όνομα τομέα app.appery.io είτε το δικό σας όνομα τομέα ή υποτομέα, υποθέτοντας ότι έχετε πρόσβαση στις ρυθμίσεις DNS και γνωρίζετε πώς να τις αλλάξετε.

Για να φιλοξενήσετε στο Heroku, υποθέτοντας ότι έχετε λογαριασμό heroku.com, πρέπει να συνδεθείτε, να εξουσιοδοτήσετε το apperyio στο Heroku και, στη συνέχεια, να δημιουργήσετε μια εφαρμογή Heroku από την πλευρά του Appery.io. Μόνο οι εφαρμογές Ιστού για κινητά μπορούν να δημοσιευτούν στο Heroku και όχι στις εφαρμογές της Κόρδοβα.

Μπορείτε να δημοσιεύσετε υβριδικές εφαρμογές στο Google Play, το iOS App Store και το Windows Store. Το Appery.io μπορεί να δημιουργήσει τα δυαδικά αρχεία για εσάς στο cloud.

Η βάση δεδομένων Appery.io χρησιμοποιεί το MongoDB, μια διεπαφή Ιστού (Εικόνα 2) και ένα REST API. Αφού ορίσετε πίνακες (γνωστές και συλλογές) και στήλες, μπορείτε να τους αναφέρετε από άλλα μέρη του εργαλείου δημιουργίας εφαρμογών Appery.io, κάνοντας συνδέσεις και αντιστοιχίσεις γραφικά για αυτόματη δημιουργία κώδικα CRUD. Κάθε βάση δεδομένων έχει τρεις προκαθορισμένες συλλογές - Χρήστες, Αρχεία και Συσκευές - που όλες έχουν περίπου τις στήλες που θα περίμενε κανείς και μπορείτε να προσθέσετε συλλογές κατά βούληση.

Το Appery.io χρησιμοποιεί τη συλλογή συσκευών μιας επιλεγμένης βάσης δεδομένων για τον έλεγχο των συσκευών που θα λαμβάνουν ειδοποιήσεις push. Υποστηρίζει ειδοποιήσεις push για Android και iOS και κάθε δεδομένη ειδοποίηση push μπορεί να αφορά μόνο το ένα ή το άλλο. Μπορείτε να φιλτράρετε τις συσκευές για μια συγκεκριμένη ώθηση με ένα πρόγραμμα δημιουργίας ερωτημάτων ή μια συμβολοσειρά ερωτημάτων. Μεταξύ των πιθανών φίλτρων είναι μια γεωγραφική τοποθεσία (για παράδειγμα, όλες οι συσκευές εντός δύο μιλίων από μια συγκεκριμένη τοποθεσία). Άλλα φίλτρα περιλαμβάνουν κανάλια, τα οποία μπορείτε να διατηρήσετε στη βάση δεδομένων και να εκχωρήσετε όπως θέλετε και αναγνωριστικά συσκευής. Το Appery.io προωθεί ειδοποιήσεις μέσω των εγγενών υπηρεσιών Google και Apple, επομένως πρέπει να έχετε εγγραφεί για αυτά τα API.

Το Appery.io εκτελεί κώδικα διακομιστή JavaScript χρησιμοποιώντας τον κινητήρα V8, αν και δεν χρησιμοποιεί το πλαίσιο Node.js. Όπως θα περίμενε κανείς, δεδομένου του API REST, ο κώδικας JavaScript back-end επικοινωνεί με την εφαρμογή με πακέτα αιτήσεων και απόκρισης και διαμορφώνει τις απαντήσεις ως JSON. Για παράδειγμα, ο ακόλουθος κώδικας ορίζει μια απάντηση "Γεια" με τον τρέχοντα χρόνο διακομιστή:

// λήψη ονόματος από την υπηρεσία, το όνομα εισάγεται στην εφαρμογή

var name = request.get ("όνομα");

// λάβετε και μορφοποιήστε την ώρα

var now = moment (). μορφή ("dddd, MMMM D YYYY, h: mm: ss a");

// βάλτε μαζί τη συμβολοσειρά χαιρετισμού

var SalamString = "Γεια" + όνομα + ". Είναι" + τώρα;

// μορφοποιήστε ως JSON και επιστρέψτε την απάντηση

response.success (JSON.stringify ({

χαιρετισμός: χαιρετισμός

}), "application / json");

Το Appery.io εφαρμόζει το Secure REST χρησιμοποιώντας τη βάση δεδομένων και τα ειδικά κανάλια μεσολάβησης για να διατηρεί ασφαλή τα μυστικά κλειδιά, τα διαπιστευτήρια και άλλα ευαίσθητα δεδομένα από το άνοιγμα από τους χρήστες της εφαρμογής. Βασικά, αποθηκεύετε τα μυστικά σας δεδομένα σε μια βάση δεδομένων με ονόματα κλειδιών, δημιουργείτε ένα κανάλι μεσολάβησης για την αντικατάσταση των ονομάτων κλειδιών με μυστικά δεδομένα και στην εφαρμογή, εργάζεστε με ονόματα κλειδιών και ορίζετε το κανάλι μεσολάβησης που θα χρησιμοποιηθεί. Στη συνέχεια, η εφαρμογή καλεί ονόματα κλειδιών και στον διακομιστή μεσολάβησης, αντικαθίστανται με δεδομένα και η υπηρεσία λαμβάνει πραγματικά δεδομένα. Οι χρήστες της εφαρμογής μπορούν να βρουν τα ονόματα κλειδιών και το αναγνωριστικό καναλιού μεσολάβησης, αλλά δεν έχουν πρόσβαση στα μυστικά δεδομένα.

Εξωτερικές διεπαφές

Από αυτό το γράψιμο, το Appery.io έχει προσθήκες για πληρωμές Stripe. SendGrid mail; Μηνύματα Twilio; Ειδήσεις USA Today; Κοινωνικά δίκτυα Facebook, Foursquare και LinkedIn. Αποθήκευση κουτιού Διαχείριση ταυτότητας OAuth και Auth0; GitHub; Δυναμική απεικόνιση Sirv; και μοντέρνα και επίπεδα θέματα UI. Έχει επίσης ενσωματωμένη υποστήριξη για το Salesforce.com.

Εάν η εξωτερική υπηρεσία που χρειάζεστε δεν έχει ήδη μια προσθήκη, όλα δεν χάνονται. Εάν πρόκειται για υπηρεσία REST, το Appery.io σάς επιτρέπει να συνδεθείτε σε αυτό, να πάρετε ένα δείγμα πακέτου απόκρισης και να χρησιμοποιήσετε το Visual Data Binding για να αντιστοιχίσετε την έξοδο της υπηρεσίας στην εφαρμογή σας.

Η Exadel, η εταιρεία πίσω από το Appery.io, πωλεί μια συνοδευτική υπηρεσία που ονομάζεται RESTXpress. Το RESTXpress διευκολύνει την αναδίπλωση βάσεων δεδομένων SQL / JDBC και υπηρεσιών Web που βασίζονται σε SOAP με διεπαφές REST. Το RESTXpress μπορεί να εγκατασταθεί σε διακομιστές εφαρμογών Java, όπως το Tomcat και διαθέτει ξεχωριστή άδεια.

Υποστήριξη εκτός σύνδεσης

Όταν χρησιμοποιείτε το Appery.io Model and Storage, η διατήρηση της κατάστασης της εφαρμογής Web στον τοπικό χώρο αποθήκευσης είναι η προεπιλεγμένη συμπεριφορά. Τα δεδομένα θα διατηρηθούν στον τοπικό χώρο αποθήκευσης και θα είναι διαθέσιμα μετά την επόμενη επανεκκίνηση. Προαιρετικά, μπορείτε να προσθέσετε τον δικό σας κώδικα (JavaScript) για να προσαρμόσετε αυτήν την ικανότητα όσο χρειάζεται. Εάν χρειάζεστε περισσότερο τοπικό χώρο αποθήκευσης από αυτόν που μπορείτε να διατηρήσετε στο κλειδί HTML5 WebView / ζεύγος τιμών, μπορείτε να χρησιμοποιήσετε το org.apache.cordova.file API για πρόσβαση στο σύστημα αρχείων της συσκευής ή στο WebSQL για πρόσβαση στην τοπική βάση δεδομένων SQLite.

Το Appery.io Model and Storage βοηθά στο να αφήσει μια εφαρμογή να λειτουργεί εκτός σύνδεσης, καθώς επιτρέπει στον προγραμματιστή να ορίσει ένα μοντέλο εφαρμογής στον πελάτη (τοπικός χώρος αποθήκευσης). Ο προσαρμοσμένος κώδικας (JavaScript) μπορεί να χρησιμοποιηθεί για περαιτέρω προσαρμογή. Το Exadel σχεδιάζει να προσθέσει πολύ περισσότερη υποστήριξη για να το διευκολύνει. Σύμφωνα με την εταιρεία, το μοντέλο και η αποθήκευση ήταν μόνο το πρώτο βήμα.

Ο συγχρονισμός βάσης δεδομένων για κινητά με διακομιστή μπορεί να πραγματοποιηθεί με το Appery.io, καθώς μπορείτε να προγραμματίσετε τόσο τον πελάτη όσο και τον διακομιστή, αλλά σίγουρα δεν είναι αυτόματος. Συνήθως είτε αποθηκεύετε αλλαγές στο ζεύγος κλειδιών / τιμών είτε διατηρείτε μια τοπική βάση δεδομένων SQLite, θα έχετε πρόσβαση σε αυτήν μέσω μιας προσθήκης Cordova και θα επιστρέφετε βρώμικες εγγραφές στη βάση δεδομένων του διακομιστή όταν είστε συνδεδεμένοι.

Συμπεράσματα και συγκρίσεις

Καθώς το Appery.io καλύπτει τους χώρους ανάπτυξης εφαρμογών για κινητά MBaaS, θα θέλατε να το συγκρίνετε με προϊόντα και στις δύο κατηγορίες. Σε ευρείες πινελιές, βρήκα το Appery.io (συνολική βαθμολογία 8,2) λιγότερο συναρπαστικό από το AnyPresence (συνολικό σκορ 9.1), το οποίο ξεπερνάει τα μίλια και δημιουργεί εγγενείς εφαρμογές και API για κινητά. Το AnyPresence διαθέτει επίσης τις σημαντικές διεπαφές εταιρικής βάσης δεδομένων.

Βρήκα επίσης το Appery.io λιγότερο ικανό από το FeedHenry (8.6), το οποίο έχει καλύτερη επιχειρηματική υποστήριξη μέσω της χρήσης του πλαισίου Node.js και του Alpha Anywhere (8.8), το οποίο έχει εξαιρετική ενσωμάτωση βάσης δεδομένων και πλήρη υποστήριξη λειτουργίας εκτός σύνδεσης, δεδομένων κινητής τηλεφωνίας συγχρονισμός και επίλυση διενέξεων δεδομένων.

Μου άρεσε το Appery.io καλύτερα από το γυμνό MBaaS Parse (7.6) και το πρόγραμμα δημιουργίας εφαρμογών / MBaaS Appcelerator (7.8) και το βρήκα περίπου συγκρίσιμο με το Kinvey (8.3), παρόλο που το Kinvey προσφέρει περισσότερα στον τρόπο ανάλυσης αναλυτικών στοιχείων και επιχειρηματικής βάσης δεδομένων .

Πίνακας βαθμολογίαςΙκανότητα (25%) Ενσωματώσεις (25%) Υποστήριξη πελατών (20%) IDE (20%) αξία (10%) Συνολική βαθμολογία
Appery.io88898 8.2