Programavimas

Apžvalga: „Appery.io“ sujungia programų mobiliesiems kūrėją su „back-end“ paslaugomis

„Appery.io“ yra gana pajėgi debesų pagrindu sukurta mobiliojo žiniatinklio ir hibridinių mobiliųjų įrenginių kūrimo platforma, turinti internetinius vizualinio dizaino ir programavimo įrankius, taip pat integruotas pagrindines paslaugas. Galite galvoti apie tai kaip apie programų kūrimo priemonės ir „MBaaS“ (mobiliosios galinės programos kaip paslaugos) kryžminimą.

Kaip matome 1 paveiksle, „Appery.io“ programų kūrėjas sukuria HTML5, „jQuery Mobile“ ir „Apache Cordova“ kodus, o „Appery.io“ sukūrimo serveris - „iOS“, „Android“, „Windows Phone“ ir HTML5 programas. „Appery.io MBaaS“ teikia prieglobą, „MongoDB NoSQL“ duomenų bazę, „push“ pranešimus, „JavaScript“ serverio kodą ir saugų tarpinį serverį.

„Appery.io“ gali kalbėti iš esmės su visomis REST API, neatsižvelgiant į tai, ar įmonė iš anksto sukūrė sąsają. Susieti iš anksto sukurtą REST sąsają su paslauga yra kelių minučių klausimas. Patiems sukurti REST sąsają reikia šiek tiek daugiau laiko ir reikia žinoti šiek tiek daugiau, tačiau tai nėra didelis darbas.

Internetinių programų kūrėjas

„Appery.io“ programų kūrimo priemonėje yra programos nustatymų, modelio ir saugyklos skirtukai (2 pav.), Jūsų kuriami puslapiai, dialogo langai, šablonai, temos, CSS, bet kokios apibrėžtos paslaugos, „JavaScript“ ir bet kokie pasirinktiniai komponentai, kuriuos norite apibrėžti. Statybininkas (3 pav.) Naudoja WYSIWYG dizaino metaforą su daugiau nei 25 valdiklių palete, įskaitant išorines paslaugas, tokias kaip „Google Maps“ ir „Vimeo“, ir joje rodomas kiekvieno elemento ypatybių lapas. Galite perjungti iš dizaino rodinio į šaltinio kodo rodinį, kad pamatytumėte sugeneruotą HTML, CSS, „JavaScript“ ir bet kurį įrenginio kodą: „Java“, skirtą „Android“, „Objective-C“, skirtą „iOS“, ir „XAML“, palaikomą „C #“, skirtą „Windows Phone“.

Galite išbandyti savo HTML5 programą eidami savo darbalaukio naršyklėje (4 pav.) Ir savo telefonų bei planšetinių kompiuterių naršyklėse; tiks viskas, kas nepriklauso nuo Cordovos. Norėdami išbandyti „Cordova“ kodą (pavyzdžiui, norėdami naudoti vietinio įrenginio galimybes arba gauti tiesioginius pranešimus), sukursite programą, atsisiųsite ją į savo įrenginį ir paleisite ten. Kad būtų patogiau, „Appery.io“ parodys jūsų HTML5 programos ir dvejetainių failų QR kodus, kad galėtumėte juos atsisiųsti tiesiai į savo įrenginį. Kad būtų dar patogiau, galite įdiegti „Appery.io Native Test App“ apvalkalą savo prietaise ir nurodyti jį savo kodu.

Apskritai man pasirodė, kad programų kūrimo priemonę lengva išmokti ir naudoti. „Appery.io“ atliko gerą darbą kurdamas savo IDE, kad mobiliųjų įrenginių kūrėjai paprastai nenustebtų tuo, ką gauna.

Galite peržiūrėti „Appery.io“ sugeneruotą šaltinio kodą internete arba atsisiųsti projektą galite jį peržiūrėti neprisijungę. Neturėjau jokių problemų skaitydamas HTML5 / CSS / „JavaScript“ kodą, bet aš jau buvau susipažinęs su „Underscore“, „jQuery“ ir „jQuery Mobile“. „Appery.io“ įtraukia apie 17 „JavaScript“ bibliotekų, neskaičiuojant valdiklių. Ar tai riebalai? Na taip. Tačiau šiuolaikiniuose įrenginiuose tai nėra problema.

Įrenginio gimtasis kodas, skirtas „Android“, „iOS“ ir „Windows Phone“, neįdomus. „Appery.io“ priklauso nuo „Cordova“ dėl savo vietinio apvalkalo, ir jis atlieka visą pritaikytą programą įterptosios naršyklės valdiklyje.

Smagu, kad „Appery.io“ turi savo debesyje pagrįstą kūrimo ir kūrimo paslaugą. Kartu su naršyklės IDE tai reiškia, kad mobiliųjų įrenginių kūrėjams nereikia turėti kelių kompiuterių ar kelių VM kurti vietinių programų ir jiems nereikia išlaikyti kelių savųjų SDK ir IDE. Žinoma, jei nuspręsite eksportuoti savo „Appery.io“ sugeneruotą programą ir ją prižiūrėsite patys (pavyzdžiui, nes nenorite tęsti savo prenumeratos), jums reikės vietinių SDK ir IDE arba „PhoneGap Build“ paslaugos iš „Adobe“.

Galinės paslaugos

Kaip jau minėjome anksčiau, „Appery.io“ turi MBaaS funkciją, kuri apima prieglobą, „NoSQL“ duomenų bazę („MongoDB“), „push“ pranešimus, „JavaScript“ serverio kodą ir saugias REST API.

„Appery.io“ leidžia HTML talpinimą savo debesyje, „Heroku“ ir (rankiniu būdu) trečiųjų šalių prieglobos paslaugų teikėjams. Pačiame „Appery.io“ debesyje galite naudoti pateiktą „app.appery.io“ domeno vardą arba savo domeno ar padomenio pavadinimą, darant prielaidą, kad turite prieigą prie savo DNS nustatymų ir žinote, kaip juos pakeisti.

Jei norite priglobti „Heroku“, darant prielaidą, kad turite „heroku.com“ paskyrą, turite prisijungti, suteikti „Heroku“ leidimą naudoti „apperyio“, tada iš „Appery.io“ pusės sukurti „Heroku“ programą. „Heroku“ gali būti skelbiamos tik mobiliosios žiniatinklio programos, o ne „Cordova“ programos.

Hibridines programas galite paskelbti „Google Play“, „iOS App Store“ ir „Windows Store“. „Appery.io“ gali sukurti dvejetainius failus savo debesyje.

„Appery.io“ duomenų bazėje naudojama „MongoDB“, žiniatinklio sąsaja (2 pav.) Ir REST API. Apibrėžę lenteles (dar žinomas kaip kolekcijos) ir stulpelius, galite į juos kreiptis iš kitų „Appery.io“ programų kūrėjo dalių, grafiškai užmezgę ryšius ir susiejimus, kad automatiškai sugeneruotumėte CRUD kodą. Kiekvienoje duomenų bazėje yra trys iš anksto nustatytos kolekcijos - Vartotojai, Failai ir Įrenginiai - kurios visos turi apytiksliai tikėtinus stulpelius, o rinkinius galite pridėti savo nuožiūra.

„Appery.io“ naudoja pasirinktos duomenų bazės „Devices“ rinkinį, kad valdytų įrenginius, kurie gaus „push“ pranešimus; jis palaiko „Android“ ir „iOS“ „push“ pranešimus, o bet koks pateiktas „push“ pranešimas gali būti skirtas tik vienam ar kitam. Galite filtruoti duotojo įrenginio įrenginius naudodami užklausų kūrimo priemonę arba užklausos eilutę. Tarp galimų filtrų yra geografinė vieta (pavyzdžiui, visi įrenginiai, esantys ne toliau kaip per dvi mylias nuo tam tikros vietos). Kiti filtrai apima kanalus, kuriuos galite laikyti duomenų bazėje ir priskirti, kiek norite, ir įrenginių ID. „Appery.io“ teikia tiesioginius pranešimus per vietines „Google“ ir „Apple“ paslaugas, todėl turite būti užsiregistravę tose API.

„Appery.io“ naudoja „JavaScript“ serverio kodą naudodamas V8 variklį, nors nenaudoja „Node.js“ sistemos. Kaip ir turėjote tikėtis turėdami REST API, vidinis „JavaScript“ kodas su programa bendrauja su užklausų ir atsakymų paketais ir atsakymus formatuoja kaip JSON. Pavyzdžiui, šis kodas apibrėžia „Hello“ atsakymą su dabartiniu serverio laiku:

// gauti vardą iš paslaugos, vardas įvestas programoje

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

// gauti ir formatuoti laiką

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

// sudėjo sveikinimo eilutę

var greetingString = "Sveiki" + vardas + ". Tai dabar" +;

// formatuoti kaip JSON ir grąžinti atsakymą

response.success (JSON.stringify ({

sveikinimas: sveikinimasStringas

}), „application / json“);

„Appery.io“ įgyvendina „Secure REST“ naudodamas savo duomenų bazę ir specialius tarpinius kanalus, kad apsaugotų slaptus raktus, kredencialus ir kitus neskelbtinus duomenis, kad programos vartotojai jų negalėtų atidaryti. Iš esmės jūs saugote savo slaptus duomenis duomenų bazėje po raktų pavadinimais, sukuriate tarpinį kanalą raktų pavadinimams pakeisti slaptais duomenimis, o programoje dirbate su raktų pavadinimais ir apibrėžiate naudojamą tarpinį kanalą. Tada programa skambina raktų pavadinimais, o tarpiniame serveryje jie pakeičiami duomenimis, o paslauga gauna tikrus duomenis. Programos vartotojai gali rasti raktų pavadinimus ir tarpinio kanalo ID, tačiau jie neturi prieigos prie slaptų duomenų.

Išorinės sąsajos

Šiuo metu „Appery.io“ turi „Stripe“ mokėjimų papildinius; „SendGrid“ paštas; „Twilio“ pranešimai; „USA Today“ naujienos; „Facebook“, „Foursquare“ ir „LinkedIn“ socialiniai tinklai; Dėžių laikymas; „OAuth“ ir „Auth0“ tapatybės valdymas; „GitHub“; „Sirv“ dinaminis vaizdavimas; ir modernios bei plokščios vartotojo sąsajos temos. Ji taip pat turi integruotą „Salesforce.com“ palaikymą.

Jei reikalinga išorinė paslauga dar neturi papildinio, viskas nėra prarasta. Jei tai REST paslauga, „Appery.io“ leidžia prisijungti prie jos, patraukti atsakymo paketo pavyzdį ir naudoti „Visual Data Binding“, kad susietų paslaugos išvestį su savo programa.

„Exadel“, „Appery.io“ kompanija, parduoda kompanijos paslaugą „RESTXpress“. RESTXpress leidžia lengvai suvynioti SQL / JDBC duomenų bazes ir SOAP pagrįstas žiniatinklio paslaugas su REST sąsajomis. „RESTXpress“ gali įdiegti „Java“ programų serveriuose, tokiuose kaip „Tomcat“, ir jis turi atskirą licenciją.

Palaikymas neprisijungus

Naudojant „Appery.io“ modelį ir saugyklą, numatytasis veiksmas yra išsaugoti žiniatinklio programos būseną vietinėje saugykloje. Duomenys bus saugomi vietinėje saugykloje ir bus prieinami po kito paleidimo. Pasirinktinai galite pridėti savo kodą („JavaScript“), kad pritaikytumėte šią galimybę tiek, kiek reikia. Jei jums reikia daugiau vietinės atminties, nei galima laikyti HTML5 „WebView“ raktų / reikšmių porų saugykloje, galite naudoti org.apache.cordova.file API, kad pasiektumėte įrenginio failų sistemą, arba „WebSQL“, kad pasiektumėte vietinę „SQLite“ duomenų bazę.

„Appery.io“ modelis ir saugykla padeda leisti programai veikti neprisijungus, nes tai leidžia kūrėjui apibrėžti programos modelį kliente (vietinėje saugykloje). Tolesniam pritaikymui galima naudoti pasirinktinį kodą („JavaScript“). „Exadel“ planuoja pridėti daug daugiau paramos, kad būtų lengviau. Pasak bendrovės, „Model and Storage“ buvo tik pirmas žingsnis.

Mobiliųjų duomenų bazių sinchronizavimą su serveriu galima atlikti naudojant „Appery.io“, nes galite programuoti ir klientą, ir serverį, tačiau tai tikrai nėra automatinė. Paprastai arba išsaugosite raktų / reikšmių poros pakeitimus, arba prižiūrėsite vietinę „SQLite“ duomenų bazę, pasieksite ją naudodami „Cordova“ papildinį ir nešvarius įrašus grįšite atgal į serverio duomenų bazę, kai būsite prisijungę.

Išvados ir palyginimai

Kadangi „Appery.io“ apima MBaaS ir mobiliųjų programų kūrimo erdves, norėtumėte ją palyginti su abiejų kategorijų produktais. Plačiais šepetėliais manau, kad „Appery.io“ (bendras rezultatas 8,2) yra mažiau įtikinamas nei „AnyPresence“ (bendras rezultatas 9,1), kuris eina papildomai ir sukuria vietines programas ir mobiliųjų API. „AnyPresence“ taip pat turi svarbias įmonės duomenų bazės sąsajas, sukurtas.

Taip pat radau, kad „Appery.io“ yra mažiau pajėgi nei „FeedHenry“ (8.6), kuri turi geresnę įmonės palaikymą, naudodama „Node.js“ sistemą, ir „Alpha Anywhere“ (8.8), kuri puikiai integruoja duomenų bazes ir palaiko neprisijungus veikiančius veiksmus, mobiliuosius duomenis. sinchronizavimas ir duomenų konfliktų sprendimas.

„Appery.io“ man patiko geriau nei plika „MBaaS Parse“ (7.6) ir programų kūrimo programa / „MBaaS Appcelerator“ (7.8), ir manau, kad ji maždaug panaši į „Kinvey“ (8.3), nors „Kinvey“ siūlo daugiau analizės ir įmonės duomenų bazių palaikymo būdų .

Rezultatų kortelėgebėjimas (25%) Integracijos (25%) Klientų palaikymas (20%) IDE (20%) Vertė (10%) Bendras rezultatas
Appery.io88898 8.2