Această recenzie este despre un subiect foarte popular în zilele noastre, în lumea dezvoltatorilor de aplicaţie, aplicaţiile Android. Mulţi clienţi, precum aplicaţiile pe dispozitivele mobile, folosesc această platforma.
Dispozitivele mobile pot fi folosite drept clienţi thin într-un browser web, dar în această recenzie vom introduce acele elemente care transformă dispozitivele mobile într-o platformă, în care putem dezvolta şi rula aplicaţii de sine stătătoare. Partea care nu este cuprinsă în această carte este aceea a dezvoltării clienţilor rich pentru aplicaţii enterprise, care rulează offline sau online, având un modul backend găzduit de un server de aplicaţie.
Prezenta carte, intitulată Android Apps with Eclipse de Onur Cinar, prezintă o trecere în revista introductivă despre cum să instalăm, să configurăm şi să rulăm aplicaţiile Android. Nu se vor aminti concepte despre Android API sau tehnici de programare, ci este doar un scurt rezumat despre cum să utilizăm Eclipse Android Toolkit (ADT).
După părerea mea oricine poate citi această carte. Desigur, unele cunoştinţe generale despre limbajul Java sunt binevenite, dar nu obligatorii. Este, aşadar, o carte uşor de citit. După ce au fost făcute toate instalările, partea de instalare este descrisă în aproape 40% din carte, urmărirea programelor prezentate este uşoara. Tot ce avem de făcut este să copiem în Eclipse codul şi să-l rulăm. Totuşi, vă recomand să studiaţi codul. Vă poate oferi soluţii sau exemple de implementare, dar şi idei pentru extensii, în munca voastră viitoare.
Cartea este organizată în 10 capitole prezentând diverse aplicaţii. Una dintre ele este "Movie Player". În această carte toate exemplele sunt dezvoltate folosind Android 2.3.3, probabil cea mai populară versiune de Android, deşi a fost lansată în 2011. Găsim în carte şi discuţii despre alte versiuni, ultima versiune de Android tratată în carte fiind Android 4.0.4, lansată în februarie 2012.
Aşa dupa cum este bine cunoscut, platform Android este proprietate a Google şi reprezintă un open standard pentru dispozitivele mobile. Statistic vorbind, statistic prezentate în carte, Android deţine 48% din piaţa de aplicaţii pentru dispozitivele mobile.
Android este mai degrabă un software stack complet pentru dispozitive mobile, decât un sistem de operare. Android se bazează pe sistemul de operare Linux şi pe Java Virtual Machine pentru aplicaţii utilizator. Android este format dintr-o mulţime de de componente, ce pot fi accesate atât de platformă cât şi de alte aplicaţii. Aceasta permite interoperabilitatea aplicaţiilor.
Cea mai importantă componentă a aplicaţiei Android este activity, care corespunde unui ecran vizual. Utilizatorul poate interacţiona cu aplicaţia prin intermediul acesteia. O operaţie pe activity este numita intent şi poate determina afişarea altor activities. Munca de fundal a unei aplicaţii este dată de services. Sunt şi multe alte componente într-o arhitectură Android, dar las cititorului plăcerea să le găsească în capitolul 2 al cărţii. Platforma Android furnizează modalităţi multiple de stocare a datelor printre care bazele de date SQLite.
Următoarele două capitole, 3 şi 4, sunt despre IDE-ul Eclipse şi metodele de instalare ale acestuia dependent de platformă. După părerea mea, aceia care sunt familiari cu IDE-ul Eclipse pot sări aceste două capitole. Pentru ceilalţi este o excelentă modalitate de a deveni experţi în utilizarea Eclipse-ului.
Capitolul 5 descrie instalarea ADT developer tools, inclusiv a emulatorului Android.
Începând cu capitolul 6 vom utiliza Android Developer Tool. Prima aplicaţie prezentată este "Movie Player". Tot în acest capitol se discută manifest editor, layout editor şi resource editor. Partea finală a capitolului se referă la implementarea claselor implicate în proiect.
Capitolul 7 este despre Android Native Development Kit (NDK), care permite dezvoltatorilor să implementeze porţiuni de aplicaţie în cod nativ maşina. NDK furnizează biblioteci C, o bibliotecă minimală C++, o bibliotecă Math, o bibliotecă grafica Open GL şi multe altele. Capitolul include un ghid de instalare NDK şi Sequoyah (plug-in ce furnizează un mediu complet de dezvoltare a aplicaţiilor mobile).
Capitolul 8 extinde proiectul movie player pentru rularea filmelor în format AVI. Aceasta foloseşte Android NDK, deoarece bibliotecile AVI vin cu soluţii open source implementate în C/C++.
Ultimele două capitole sunt despre Android scripting. Primul prezintă partea teoretică iar al doilea unele extensii ale proiectului "Movie Player". Android scripting reprezintă este o unealtă la îndemână pentru task-uri simple. Script-urile nu trebuie compilate şi în consecinţă nici împachetate sau desfăşurate pe server. Cartea de faţă prezintă Scripting Layer for Android (SL4A), care cuprinde o multitudine de interpretori pentru Android precum Perl, Python, Rhino etc.
Aşa după cum am mai afirmat, în spatele simplităţii aparente cartea este un ghid atât pentru începători cât şi pentru cei care caută soluţii pentru problemele lor de dezvoltare a aplicaţiilor Android.
Ca de obicei spun că sunt intersat în discuţii cu cititorii şi de aceea îi invit să le iniţieze sau să ia parte la ele.
Lectură placută!