Pentru cei care sunt interesati de cum a fost concursul, dar nu au putut participa:
Tema: Împreună cu echipa, veţi construi o aplicaţie desktop pentru afişarea unui set de fotografii. Pe langă funcţionalitate, se punctează pozitiv designul plăcut şi utilizabilitatea aplicaţiei.
Workflow
Aplicaţia trebuie să încarce toate imaginile dintr-un folder (locaţia folderului este la alegerea voastră).
Acestea vor fi afişate ca şi thumbnails, iar utilizatorul poate selecta orice poză pentru a o vedea la o dimensiune superioară.
Layout-ul aplicaţiei şi modul în care afişaţi pozele este la alegerea voastră – vă recomandam să vă valorificaţi aptitudinile de design pentru a crea o aplicaţie cool.
Cerinţe
- se va folosi Adobe® AIR™ şi orice editor vă este la îndemână*
- aplicaţia trebuie livrată ca fişier .exe, acompaniată de fişierele sursă
- documentaţia există pe fiecare calculator; veţi primi şi o descriere a capabilităţilor oferite de Adobe® AIR™.
Documentatia pusa la dispozitia concurentilor, pe fiecare calculator in format electronic, a fost:
- <a href=“http://livedocs.adobe.com/labs/air/1/jslr/:2cbb08je]JavaScript Language Reference for the Adobe® Integrated Runtime (AIR™)[/url:2cbb08je]
- Developing AIR Applications with HTML
- [url=http://livedocs.adobe.com/labs/air/1/quickstartshtml/”>AIR Quick Starts for HTML</a>.
<br>
<br>Fiecare echipa a primit si o descriere mai generala a AIR, printata:
<br><i>Introducere</i>
<br>AIR (Adobe Integrated Runtime) este o platformă Adobe ce permite dezvoltatorilor web să creeze aplicaţii pentru desktop, folosind tehnologiile şi uneltele cu care au fost obişnuiţi:
<br>- HTML / CSS / JavaScript (şi tehnici asociate - DOM, AJAX) - dezvoltare web „pura”
<br>- Flash / Flex / ActionScript – pentru dezvoltatori Flash.
<br>Un lucru pe care l-au avut în minte oamenii din spatele AIR, este portabilitatea - o aplicaţie AIR scrisă se comportă identic şi arată la fel în Windows şi pe Mac (tare, nu?).
<br>
<br><i>Structura unei aplicaţii</i>
<br>Orice aplicaţie AIR trebuie să aibă cel puţin două fişiere:
<br>- pagina de start, afişată la rularea aplicaţiei - un fişier .html sau un .swf, în funcţie de direcţia aleasă. Mă voi referi pe mai departe la varianta de lucru HTML / JavaScript.
<br>- descriptorul programului, un fişier XML ce defineşte diverse proprietăţi ale programului
<br>o numele aplicaţiei, unic (dacă se instalează două aplicaţii cu acelaşi nume, ultima o înlocuieşte pe prima care devine inaccesibilă - de aceea se recomandă utilizarea unor notaţii/reguli care să identifice aplicaţia în mod unic),
<br>o fişierul de start
<br>o versiunea programului
<br>o titlu, descriere
<br>o proprietăţi ale ferestrei (chiar transparenţă)
<br>o icons
<br>o tipuri de fişier asociate cu aplicaţia.
<br>
<br>Fişierul AIRAliases.js este recomand să fie inclus în fiecare proiect. Defineşte namespace-ul air în care sunt încărcate prescurtări pentru ierarhii de obiecte.
<br>De exemplu, este mai scurt să foloseşti air.navigateToURL decât window.runtime.flash.net.navigateToURL.
<br>
<br><i>Testarea şi împachetarea unei aplicaţii AIR</i>
<br>AIR SDK vine cu două unelte, foarte folositoare:
<br>- adt.exe, pentru împachetarea aplicaţiei* (cu installer). Pachetul creat are extensia .air.
<br>O poţi distribui, dar cel care vrea să o instaleze, respectiv utilizeze trebuie să instaleze în prealabil runtime-ul. (La fel ca pentru rularea de aplicaţii Java - trebuie să fie instalat JRE).
<br> Acelaşi installer poate actualiza aplicaţia (poţi scrie singur rutina de update, dacă este ceva mai special) sau o poate dezinstala. Prin installer poţi porni şi aplicaţia, dacă aceasta este deja instalată.
<br>Forma generală a comenzii este adt -package numele_pachetului descriptorul_aplicatiei.xml pagina_de_start.html [, fisier1, …, fisiern, …], unde fisieri reprezintă celelalte fişiere ale aplicaţiei - fişiere .html, .css, .js, .ico etc…
- adl.exe, pentru testarea rapidă a aplicaţiei (fără a o împacheta, instala şi apoi rula). Se apelează din linia de comandă şi se transmite ca parametru numele descriptorului.
Forma generală este adl descriptorul_aplicatiei.xml.
* Mai târziu, în acest tutorial, vei afla despre metode automatizate de a testa sau împacheta o aplicaţie AIR, decât a scrie în linia de comandă de fiecare dată.
Features ale AIR şi capabilităţi în plus faţă de JavaScript în browser
AIR integrează un engine de HTML (WebKit, proiect open-source, non-Adobe, oferit în licenţă LGPL sau BSD), folosit şi de Safari.
Ceea ce este important pentru o aplicaţie desktop este accesul la fişiere, un lucru ce nu este posibil în browser. Mai multe despre accesul la fişiere poţi citi în documentaţia oficială pe care o ai la dispoziţie.
Ceea ce probabil vei remarca în documentaţie, sunt funcţii şi obiecte specifice ActionScript cu care vei lucra din JavaScript. Fenomenul se cheamă „script bridging”. Acest lucru este posibil datorită integrării low-level dintre WebKit şi Flash Player (deasupra cărora se află AIR).
AIR oferă suport integrat pentru SQLite, suport pentru AJAX - se pot face call-uri către orice serviciu/site - în mod obişnuit, o aplicaţie în browser ce foloseşte AJAX poate comunica doar cu servicii din acelaşi domeniu.
Extensia pentru Adobe Dreamweaver
După cum anunţasem mai devreme, voi prezenta un mod automatizat (deci rapid) de testare şi împachetare a unei aplicaţii AIR. Pentru a putea beneficia de facilităţile pe care ţi le ofera extensia, trebuie să creezi mai întâi un „Site” (Site / New Site). Dacă ai mai multe proiecte AIR create, trebuie să faci „switch” între „Site”-urile corespunzătoare (intri la Site – Manage Sites, alegi ce trebuie, apoi click pe Done).
Din acelaşi meniu de unde puteai să lansezi un preview un browser, poţi acum alege Preview in Adobe AIR.
Pentru a face un pachet, alegi opţiunea Package as Adobe AIR Application… Trebuie să adaugi fişierele auxiliare ale proiectului (celelalte în afară de fişierul de start). Restul opţiunilor sunt denumite ca să facă legătura cu sintaxa fişierului (XML) descriptor de aplicaţie.