Pregled orodij za razvoj heterogenih mobilnih aplikacij Poročilo v sklopu projekta VIRIZ Maribor, maj 2014 Avtorja: David Zakelšek Primož Gorečan stran 1/20 KAZALO 1. Uvod ................................................................................................................................................ 4 2. PhoneGap ........................................................................................................................................ 5 2.1. Kratek opis ............................................................................................................................... 5 2.2. Zgodovina ................................................................................................................................ 6 2.3. Design in logika ........................................................................................................................ 6 3. Embarcadero Delphi ........................................................................................................................ 8 3.1. Kratek opis ............................................................................................................................... 8 3.2. Značilnosti................................................................................................................................ 9 4. Titanium........................................................................................................................................... 9 4.1. Kratek opis ............................................................................................................................... 9 4.2. Arhitektura .............................................................................................................................. 9 4.3. Zgodovina razvoja.................................................................................................................. 12 5. Sencha Touch ................................................................................................................................ 12 5.1. Opis ........................................................................................................................................ 12 5.2. Razvojna orodja ..................................................................................................................... 12 6. jQuerry Mobile .............................................................................................................................. 14 6.1. Opis ........................................................................................................................................ 14 6.2. Razvojna orodja ..................................................................................................................... 14 6.3. Primerjava Sencha Touch in jQuerry Mobile ......................................................................... 15 7. QT Project ...................................................................................................................................... 16 7.1. Zgodovina .............................................................................................................................. 16 7.2. Opis ........................................................................................................................................ 16 7.3. Razvojna orodja ..................................................................................................................... 16 8. Intel XDK ........................................................................................................................................ 17 8.1 Opis .............................................................................................................................................. 17 8.2 Razvojna orodja ........................................................................................................................... 17 9. 10. Zaključek ........................................................................................................................................ 19 VIRI ............................................................................................................................................ 20 stran 2/20 KAZALO SLIK Slika 1: PhoneGap arhitektura ................................................................................................................. 6 Slika 2: Primer izgleda PgoneGap ............................................................................................................ 7 Slika 3: Podpora PhoneGap API-ja za različne platforme ........................................................................ 8 Slika 4: Podpora knjižnic in platform za Delphi in RAD Studio ................................................................ 9 Slika 5: Preslikava kode na različne platforme ...................................................................................... 10 Slika 6: Primer grafičnega vmesnika Titanium ...................................................................................... 11 Slika 7: Titanium arhitektura ................................................................................................................. 11 Slika 8: Sencha Animator ....................................................................................................................... 13 Slika 9: Primer izgleda Sencha Touch .................................................................................................... 14 Slika 10: Primerjava Sencha Touch in jQuerry Mobile .......................................................................... 16 Slika 11: Primer izgleda aplikacije QT Project........................................................................................ 17 Slika 12: Intel XDK .................................................................................................................................. 18 stran 3/20 1. Uvod V zadnjih dveh desetletjih smo bili priča velikemu razvoju na področju mobilnih tehnologij oziroma tehnologije na sploh, ki je popolnoma vpletena v naše življenje. Razvoj informacijsko komunikacijske tehnologije nam je precej spremenil način življenja, katerega si brez računalnika in mobilnika več ne moremo predstavljati. Tehnologija nam je v precejšnji meri olajšala življenja, rešila marsikatere probleme ter pripomogla k kvalitetnejšemu življenju. V sklopu projekta z tematiko 'zdravo in kvalitetno življenje ljudi' nameravamo izdelati mobilno aplikacijo, ki bo pripomogla k boljšim odločitvam za zdravo ter kvalitetno življenje ljudi. Namen te seminarske naloge je pregled in proučevanje obstoječih tehnologij, ki bi omogočale izgradnjo takšne mobilne aplikacije. Osredotočili smo se predvsem na tehnologije in platforme, ki omogočajo heterogen razvoj mobilnih aplikacij. Zanima nas podprtost mobilnih platform Android, IOS in Windows Phone ter omogočen dostop do periferije in senzorjev posamezne naprave. V nadaljevanju so predstavljene tehnologije PhoneGap, Delphi, Titanium, Jquery Mobile, Sencha Touch in Qt Project, katere omogočajo tovrsten razvoj aplikacij. Posamezna tehnologija je podrobneje opisana, izpostavljene so pozitivne ter negativne lastnosti ter opisana podpora za posamezno mobilno platformo. Namen te seminarske naloge je izvesti temeljito analizo obstoječih tehnologij in izbrati najprimernejšo za razvoj medplatformske mobilne najenostavnjejši razvoj ter zajela vse potrebne zahteve. stran 4/20 aplikacije, ki bo omogočala 2. PhoneGap 2.1.Kratek opis PhoneGap je orodje za razvijanje mobilnih aplikacij, ki ga je razvilo podjetje Nitobi, leta 2011 pa ga je kupilo podjetje Adobe Systems. Programerjem omogoča, da s pomočjo jezikov HMTL5, JavaScript in CSS3 zgradijo aplikacije za mobilne naprave. Aplikacije, ki se ustvarijo s PhoneGapom, so hibridne, kar pomeni, da niso povsem avtohtone (ker celotna razporeditev poteka preko spletnih ogledov namesto UI platforme), prav tako niso povsem spletne (ker ne gre le za spletne aplikacije, ampak so pakirane kot aplikacije za distribucijo in imajo tudi dostop do API naprave). Od različice 1.9 naprej je celo omogočeno svobodno premešati avtohtone in hibridne odseke kode. PhoneGap je temelj programske opreme Apache Cordova. Programska oprema se je prej imenovala le 'PhoneGap', kasneje pa 'Apache Callback'. A ker se je to ime mnogim zdelo preveč splošno, so ga potem preimenovali v Apache Cordova. Gre za odprtokodno programsko opremo. Po uradnih podatkih podjetja Nitobi ima do sedaj PhoneGap skupno že 600.000 prenosov, med uporabniki platforme pa najdemo tudi velika podjetja, kot so IBM, Alcatel-Lucent, Cisco in Logitech. Razvijalci uporabljajo PhoneGap, ker jim omogoča skupno programsko osnovo za različne platforme. Tako jim ni potrebno na novo razvijati kode, ko se premaknejo na druge platforme. stran 5/20 Slika 1: PhoneGap arhitektura 2.2.Zgodovina PhoneGap je bil razvit na dogodku iPhoneDevCamp v San Franciscu, leta 2009 pa je celo osvojil nagrado občinstva na konferenci Web 2.0. Platforme mobilnih aplikacij, kot so ViziApps, Worklight, Convertigo in appMobi uporabljajo PhoneGap. Četrtega oktobra 2011 je Adobe uradno oznanil nakup podjetja Nitobi (ki je PhoneGaP razvil). Koda PhoneGapa je prispevala k nastanku novega projekta, imenovanega Apache Cordova. Zgodnje različice PhoneGapa so zahtevale ustvarjanje različnih aplikacij za računalnike Apple in za računalnike, ki so uporabljali Windows. Po septembru 2012 pa lahko programerji naložijo HTML, CSS in JavaScript izvorno kodo v »oblak prevajalnik«, ki potem ustvari aplikacijo za vsako podprto platformo. 2.3.Design in logika Aplikacije PhoneGap uporabljajo HTML5 in CSS3 za upodabljanje in JavaScript za svojo logiko. Čeprav HTML5 sedaj omogoča dostop do osnovne strojne opreme, kot sta kamera in GPS, pa podpora brskalnikov za naprave, ki temeljijo na HTML, na mobilnih brskalnikih ni dosledna, še posebej ne na starejših različicah Androida. Da bi odpravili te omejitve, PhoneGap s stran 6/20 pomočjo vmesnika tujih funkcij HTML5 kodo vstavi v WebView na napravi, da lahko dostopa do izvornih virov naprave. Slika 2: Primer izgleda PgoneGap PhoneGap se lahko tudi razširi z vtičniki, ki razvijalcem omogočajo dodajanje funkcionalnosti, ki jih lahko prikličejo iz JavaScripta. PhoneGap vključuje osnovne vtičnike, ki omogočajo dostop do kamere, mikrofona, kompasa, datotečnega sistema itd. Vseeno pa uporaba spletnih tehnologij povzroči, da številne PhoneGap aplikacije delujejo počasneje kot avtohtone aplikacije s podobnimi funkcionalnostmi. Adobe Systems svari, da lahko aplikacije, ki so bile zgrajene z PhoneGap, Apple zavrne, ker so prepočasne ali ker se ne zdijo dovolj »avtohtone« (imajo videz in funkcionalnost, ki je v skladu s tem, kar uporabniki pričakujejo od platforme). stran 7/20 Slika 3: Podpora PhoneGap API-ja za različne platforme 3. Embarcadero Delphi 3.1.Kratek opis Embarcadero Delphi je integrirano razvojno okolje za konzolo, namizno grafiko, splet in mobilne aplikacije. Prevajalnik Delphi uporablja svoj lastni programski jezik Pascal za generiranje avtohtone kode za 32- in 64-bitni operacijski sistem Windows, kot tudi 32-bitni operacijski sistem Mac OS X, iOS in Android. Leta 2011 so začeli načrtovati tudi podporo za operacijski sistem Linux. Delphi je bil prvotno razvit kot naslednik Borland Pascala s strani podjetja Borland, in sicer kot orodje za hiter razvoj aplikacij za Windows. Delphi in njegov C++ ekvivalent, C++ Builder, sta si delila veliko temeljnih delov, zlasti IDE in VCL, a sta ostala ločena do izdaje RAD Studia 2007. RAD Studio je skupni gostitelj Delphija, C++ Builderja in ostalih. V letu 2006 so razvojna orodja podjetja Borland prenesli na hčerinsko družbo CodeGear, ki jo je leta 2008 kupilo podjetje Embarcadero Technologies. stran 8/20 3.2.Značilnosti Delphi uporablja programski jezik Object Pascal in prevaja Delphi izvorno kodo v avtohtono x86 kodo. Vključuje VCL, podporo za neodvisne vmesnike COM in podporo velikega števila komponent tretjih oseb. Implementacije vmesnikov se lahko prenesejo na polja ali lastnosti razredov. Podprta je tudi podatkovna povezljivost in Delphi dobavlja več sestavnih delov baze podatkov. Omogoča nam izdelavo medplaformskih aplikacij. Slika 4: Podpora knjižnic in platform za Delphi in RAD Studio 4. Titanium 4.1.Kratek opis Titanium je odprtokodno orodje, ki omogoča ustvarjanje mobilnih aplikacij na platformah, vključno z iOS, Android, Windows Phone, BlackBerry OS in Tizen. Februarja 2013 je revija 'Business Insider' ocenila, da 10% vseh pametnih telefonov uporablja aplikacije, ki so nastale z Titaniumom. V letu 2013 je imel Titanium kar pol milijona registriranih razvijalcev. Sestavni del Titaniuma je orodje za razvijanje programske opreme Titanium SDK, ki ima Adobovo licenco. 4.2.Arhitektura Vsa aplikacijska koda je napotena na mobilno napravo, kjer je interpretirana z uporabo JavaScript motorja; Mozillin Rhino je uporabljen na Androidu in BlackBerryju, na iOS pa je stran 9/20 uporabljen Appleov JavaScriptCore. Nalaganje programa traja dlje kot pri programih, ki so bili razviti z avtohtonim SDK, saj morajo biti interpreter in vse zahtevane knjižnice naložene, šele potem se lahko na mobilni napravi začne interpretiranje izvorne kode. Slika 5: Preslikava kode na različne platforme Nekateri razvijalci so poročali, da čeprav daje delo z Titaniumom hitre rezultate, zaradi česar je zelo primeren za izdelavo prototipov, se pojavljajo težave zaradi razlik v obnašanju API platform, stabilnosti in upravljanju pomnilnika, zaradi česar so na koncu ponovno napisali aplikacije v avtohtoni kodi. Vseeno pa je bilo do junija 2013 že več kot 55.000 aplikacij ustvarjenih z Titaniumom. stran 10/20 Slika 6: Primer grafičnega vmesnika Titanium Temeljne značilnosti Titaniuma vključujejo: - API platformo za dostop do avtohtonih komponent uporabniškega vmesnika, kot so navigacija, meniji, pogovorna okna in avtohtone funkcionalnosti naprave, kot so datotečni sistem, omrežja, geolokacija in zemljevidi. - Pregleden dostop do avtohtonih funkcionalnosti, ki še niso zajete v API. Slika 7: Titanium arhitektura stran 11/20 4.3.Zgodovina razvoja Ko so ga leta 2008 predstavili javnosti, je bil Titanium namenjen razvoju namiznih aplikacij, pogosto so ga primerjali tudi z Adobe Air. No, junija 2009 je dodal podporo za razvijanje mobilnih aplikacij za iPhone in Android. Aprila 2010 je bila dodana podpora za razvijanje aplikacij za iPad, junija 2010 pa še za BlackBerry. Aprila 2013 je bila dodana še podpora za Tizen. 5. Sencha Touch 5.1. Opis Sencha Touch je JavaSript knjižnica namenjena izdelavi uporabniških vmesnikov primernih za mobilne naprave (Sencha, 2014). Ogrodje Sencha Touch je v zgrajeno na osnovi standardov HTML5 in CSS3 ter JavaScipt knjižnici Ext JS (Sencha Touch, 2014). Čeprav je ogrodje v osnovi namenjeno izdelavi spletnih aplikacij nam omogoča dostop do različnih strojnih zmogljivosti naprave kot sta kamera in GPS. Prav tako pa to ogrodje vsebuje preko 50 vnaprej pripravljenih komponent, kot so gumbi, tabele, različna vnosna polja(datum, e-poštni naslov…) (Sencha, 2014), ki poenostavijo in pospešijo razvoj. Aplikacije zgrajene s tem ogrodjem so zgrajene po principu MVC (model-pogled-kontrolnik) in s tem povečajo preglednost programske kode in neodvisnost uporabniškega vmesnika od preostale kode (Grisogono, 2014). Sencha Touch omogoča zaznavo dogodkov ko so dotik(»tap«), poteg(»swipe«), razširitev, rotacija… 5.2. Razvojna orodja Za razvoj v ogrodju Sencha Touch imamo več različnih možnosti. Posebej za razvoj s tem ogrodjem imamo orodji Sencha Touch in Sencha Animator, ki pa sta plačljivi. Lahko pa stran 12/20 razvijamo tudi v klasičnih urejevalnikih besedila kot je Notepad ali pa uporabimo Eclipse in vanj namestimo potreben vtičnik, ki pa je brezplačen. Sencha Animator je namenjen izdelavi animacij. Animacije izdelane s tem orodjem imajo podoben izgled kot tiste narejene s Flashem, le da so te narejene na osnovi HTML5 in predvsem CSS3. Slika 8: Sencha Animator Sencha Arcitect je orodje, ki nam omogoča »drag and drop« gradnjo uporabniškega vmesnika. To orodje nam tudi pomaga pri razvoju aplikacije na MVC principu, saj avtomatsko razvršča programsko kodo kamor sodi. To orodje občutno pospeši in poenostavi razvoj aplikacij, še posebno tistim, ki šele spoznavajo ogrodje Sencha Touch. Sencha Touch CMD je ukazna vrstica, ki omogoča avtomatizacijo nekaterih opravil pri razvoju aplikacij na osnovi Sencha Touch. Orodje je uporabno predvsem takrat ko ne uporabljamo Sencha Architect in omogoča izdelavo novih projektov, nameščanje na naprave… Eclipse Plugin, vtičnik za razvojno okolje Eclipse je brezplačen in izkorišča prednosti, ki jih ponuja Eclipse. Vtičnik nam nudi popolno možnost »code assist« in avtomatsko javljanje sintaktičnih napak. Orodje je primerno predvsem za tiste, ki dobro poznajo Sencha Touch (Early, 2013). stran 13/20 Slika 9: Primer izgleda Sencha Touch 6. jQuerry Mobile 6.1. Opis Ogrodje jQuerry Mobile je namenjeno izdelavi aplikacij za mobilne naprave in temelji na standardu HTML5 za izdelavo uporabniškega vmesnika in tehnologiji JavaScript, ki se uporablja za implementacijo funkcionalnosti (jQuerry, 2014). Za hitrejši razvoj to ogrodje vsebuje vnaprej pripravljene komponente, kot so gumbi, dialogi, navigacijske vrstice, tabele z iskalnim poljem itd. Za izdelavo vizualnih tem je na voljo orodje Themeroller, ki omogoča enostavno generiranje barvnih shem po želji razvijalca. Aplikacije izdelane v tem ogrodju delujejo na vseh spletnih brskalnikih, ki podpirajo HTML5. Prav tako pa to ogrodje vsebuje še podporo za uporabo s ogrodjem PhoneGap, ki omogoči pakiranje aplikacije za uporabo kot domorodne aplikacije na mobilni napravi. 6.2. Razvojna orodja Za razvoj aplikacij na osnovi ogrodja jQuerry Mobile je na voljo več integriranih razvojnih okolij. Aptana Studio, Eclipse s Aptana vtičnikom, možen pa ju tudi razvoj v Notepadu. stran 14/20 6.3. Primerjava Sencha Touch in jQuerry Mobile Ker sta si ogrodji Sencha Touch in jQuerry Mobile podobni, je na tem mestu potrebno izpostaviti podobnosti in razlike med tema dvema konkurentoma. Ugotovitve v tej tabeli so povzete po Gaić, 2013. Sencha Touch Uporabniški vmesnik jQuerry Mobile Temelji na JavaScriptu Temelji na HTML5 sledi MVC s pomočjo CSS lahko primernejši za igre spremenimo vsako ponuja več grafičnih komponento ali pa komponent ustvarimo novo Dostopnost, enostavnost za Samo JavaScript Enostavna sintaksa uporabo Težje odpravljanje Podpora za MVC preko napak Strma učna krivulja zunanjih razširitev Dobra podpora za izdelavo novih tem Lahko razvijamo s skoraj vsakim razvijalnim orodjem Dokumentacija Obsežna in pregledna Dobra dokumentacija dokumentacija vendar na nižjem nivoju Uradna podpora je kot Sencha plačljiva jQuerry Mobile Manj neuradne podpore na forumih Veliko knjig na temo Dobra podpora na forumih, blogih… Orodja, razširitve Podpora za pakiranje aplikacij za mobilne Za pakiranje aplikacij uporablja PhoneGap naprave Podpora za teme Podpora za teme Veliko razširitev s strani IDE je plačljiv uporabnikov kompatibilnost s razširitvami jQuerry stran 15/20 Splošne ugotovitve Hitrejše delovanje Lažji razvoj Deluje samo na web kit Deluje na več napravah Kompleksne hibridne Mobilne strani aplikacije Enostavne hibridne brskalnikih Najboljše uporabiti za aplikacije Slika 10: Primerjava Sencha Touch in jQuerry Mobile 7. QT Project 7.1. Zgodovina Projekt je nastal v okviru Finskega podjetja Trolltech, ki ga je kasneje kupila Nokia, nazadnje pa še Finsko podjetje Digia (Qt Project, 2013). Najprej je bilo aplikacije zgrajene v tem ogrodju možno poganjati le na sistemih Windows in Linux, danes pa je to ogrodje podpira še najpopularnejše mobilne operacijske sisteme(Android, iOS, Windows Mobile, BlabcBerry) in sisteme kot je Amazon Kindle DX in še nekatere druge (Qt (software), 2014). Eden največjih projektov, ki temelji na tem ogrodju je KDE, grafični vmesnik za operacijske sisteme Linux. 7.2. Opis QT project je ogrodje za razvoj aplikacij, ki delujejo na različnih platformah in za razliko od Sencha Touch in jQuerry Mobile temelji na programskih jezikih C++ in QML. QML je programski jezik za izdelavo uporabniških vmesnikov in temelji na JavaSriptu (QML, 2014). Ogrodje je sestavljeno iz modulov, ki se delijo na nujne in dodatne. Med nujne sodijo GUI, widgets, Network, Multimedia, SQL. Med dodatne pa Bluetooth, OpenGL… (Qt (software), 2014) 7.3. Razvojna orodja QT creator je namenjen razvoju aplikacij, ki delujejo na različnih platformah. Razvojno okolje temelji na priljubljenem okolju Eclipse. Druga možnost razvoja je vstavek za MS Visual stran 16/20 Studio. Seveda obstaja še več možnosti razvoja aplikacij na osnovi ogrodja QT project, vendar pa sta omenjeni najbolj razširjeni in verjetno najbolj enostavni (QT Project, 2014). Slika 11: Primer izgleda aplikacije QT Project 8. Intel XDK 8.1 Opis Tudi podjetje Intel je razvilo svojo rešitev na področju heterogenih mobilnih rešitev. Intel XDK deluje podobno kot že nekatere prej omenjene tehnologije na osnovi HTML5, ki se uporabi za izgradnjo vmesnikov in pa Javascript knjižnice, ki omogoči dostop do strojnih zmogljivosti naprave. Ta programska knjižnica nam omogoča dostop do kamere, merilca pospeškov, podatkov o lokaciji in še nekaterih drugih. Žal pa zaenkrat še nima podpore za uporabo bluetooth tehnologije. To pomanjkljivost bi naj odpravili v eni od prihodnjih različic ogrodja in sicer tako, da bi vključili podporo za Cordova vtičnike, ki jih že uporablja PhoneGap. 8.2 Razvojna orodja Intel razvijalcem nudi posebno razvojno okolje, preko je ustvarjanje aplikacij hitrejše in enostavnejše. Orodje omogoča razvoj, poganjanje naprav v simulatorju ali na napravi. Vmesnik orodja je zasnovan na osnovi zavihkov preko iz katerih je enostavno razbrati kaj lahko počnemo v njih. stran 17/20 Slika 12: Intel XDK stran 18/20 9. Zaključek Po podrobnem pregledu in primerjavi ogrodij za razvoj heterogenih mobilnih rešitev sva prišla do ugotovitev, da imajo vse svoje prednosti in slabosti. Nekatere je celo možno ali potrebno uporabiti skupaj, na primer jQuerry Mobile in PhoneGap ali pa tudi Sencha Touch in PhoneGap, vendar ta kombinacija ni nujno potrebna saj je za razliko od jQuerry Mobile, Sencha zmožna sama zapakirati aplikacijo za delovanje na mobilni napravi. Vsa ta ogrodja podpirajo dostop do strojnih zmogljivosti naprave (kamera, GPS…) in so iz tega vidika skoraj enakovredna domorodnim aplikacijam. Največja pomanjkljivost v primerjavi z domorodnimi aplikacijami je lahko hitrost, ki pa se pri teh ogrodjih razlikuje. Predvsem je vzrok za počasnejše delovanje potreba po JavaScript interpreterjih, ki se morajo naložiti pred aplikacijo. Bistvena ugotovitev, do katere sva prišla je da lahko takšna ogrodja pospešijo razvoj aplikacij za različne mobilne platforme, a so lahko glede na odzivnost v slabšem položaju kot domorodne aplikacije. Z vidika razvijalca pa se takšen razvoj obrestuje še posebno takrat, ko je treba aplikacijo hitro poslati na trg. stran 19/20 10. VIRI 1. Slideshare. (28. 3 2009). Prevzeto 18. 5 2014 iz Introduction to PhoneGap: http://www.slideshare.net/dqminh/introduction-to-phonegap-1213406 2. docwiki. (30. 10 2013). Prevzeto 19. 5 2014 iz Delphi Considerations for Cross-Platform Applications: http://docwiki.embarcadero.com/RADStudio/XE5/en/Delphi_Considerations_for_CrossPlatform_Applications 3. Qt Project. (26. 5 2013). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/Qt_Project 4. jQuerry Mobile. (24. 3 2014). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/JQuery_Mobile 5. Matt Schmulen. (14. 1 2014). Prevzeto 18. 5 2014 iz Titanium or PhoneGap? : http://strongloop.com/strongblog/titanium-vs-phonegap-cross-platform-mobile-framework/ 6. QML. (30. 3 2014). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/QML 7. Qt (software). (6. 5 2014). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/Qt_%28software%29 8. Sencha Touch. (20. 3 2014). Pridobljeno iz Wikipedia: http://en.wikipedia.org/wiki/Sencha_Touch 9. Wikipedia. (14. 3 2014). Prevzeto 16. 5 2014 iz PhoneGap: http://en.wikipedia.org/wiki/PhoneGap 10. ComputerWeekly. (brez datuma). Prevzeto 19. 5 2014 iz Cross-platform app development - is there one tool to rule them all?: http://www.computerweekly.com/photostory/2240203462/One-tool-to-rule-themall/6/Embarcarderos-Delphi-XE4-can-build-apps-for-Windows-Mac-and-iOS 11. Early, J. (25. 2 2013). Sencha Eclipse Plugin 2.0 New and Noteworthy. Pridobljeno iz Sencha blog: https://www.sencha.com/blog/sencha-eclipse-plugin-2-0-new-and-noteworthy/ 12. embarcadero. (brez datuma). Prevzeto 18. 5 2014 iz Develop applications with Delphi: http://www.embarcadero.com/products/delphi/ios-development 13. Gaić, D. (25. 7 2013). Sencha Touch vs jQuery Mobile. Pridobljeno iz Gajotres: http://www.gajotres.net/sencha-touch-vs-jquery-mobile/ 14. Grisogono, G. (3. 3 2014). 5 Best Mobile Web App Frameworks: Sencha Touch . Pridobljeno iz Modus Create: http://moduscreate.com/5-best-mobile-web-app-frameworks-sencha-touch/ 15. jQuerry. (2014). A Touch-Optimized Web Framework. Pridobljeno iz jQuery Mobile: http://jquerymobile.com/ stran 20/20 16. Letsgomo. (brez datuma). Prevzeto 19. 5 2014 iz X-Platform Apps: http://letsgomo.com/cross-platform-mobile-apps/ 17. QT Project. (2014). QT Project. Pridobljeno iz QT Project: http://qt-project.org/ 18. Rouse, M. (9 2005). TechTarget. Prevzeto 18. 5 2014 iz Delphi: http://searchsoa.techtarget.com/definition/Delphi 19. Sencha. (2014). Sencha Touch. Pridobljeno iz Sencha: http://www.sencha.com/products/touch/ 20. Stewart, B. (4. 10 2011). Radar. Prevzeto 16. 5 2014 iz PhoneGap basics: What it is and what it can do for mobile developers: http://radar.oreilly.com/2011/10/phonegap-mobiledevelopment.html stran 21/20
© Copyright 2024