1. Cercul de Rich Internet Applications
XML, PHP, ByteArray
Facultatea de Informatică
Iași
2. XML - eXtensible Markup Language
• Așa cum spune și denumirea, este un limbaj
pentru marcare extensibil….
• Cam așa arată:
http://www.info.uaic.ro/~flash 2
5. XML – în 10 puncte*
1 - XML structurează datele (informațiile)
2 - XML seamănă un pic cu HTML
3 - XML este text, dar nu e făcut pentru a fi citit
4 - XML este 'vorbareț' prin design
5 - XML este o familie de tehnologii (SVG, MXML
etc.)
* - http://www.siteuri.ro/developer/xml-in-10-points.ro.html
http://www.info.uaic.ro/~flash 5
6. XML – în 10 puncte*
6 - XML e nou, dar nu chiar atât de nou
7 - XML tranformă HTML în XHTML
8 - XML este modular
9 - XML este baza RDF-ului și Web-ului Semantic
10 - XML funcționează pe orice platformă, este
suportat bine și nu are nevoie de licență
* - http://www.siteuri.ro/developer/xml-in-10-points.ro.html
http://www.info.uaic.ro/~flash 6
7. În AS3 – poate fi declarat în aplicație
http://www.info.uaic.ro/~flash 7
8. În AS3 – poate fi declarat în aplicație
http://www.info.uaic.ro/~flash 8
9. XML – poate fi încărcat din fișier extern
http://www.info.uaic.ro/~flash 9
10. XML – ce ați mai putea citi voi…
• XSL – pentru a formata un XML
• DOM / SAX – pentru a parcurge un XML
• DTD / Schema – pentru a testa corectitudinea
unui XML la nivel sintactic (dacă se conformează
unui anumit șablon spre exemplu)
http://www.info.uaic.ro/~flash 10
11. În AS3 – Pentru acest XML…
http://www.info.uaic.ro/~flash 11
12. XML – cum se parcurge:
• De exemplu după ce a fost încărcat:
http://www.info.uaic.ro/~flash 12
13. XML – cum se parcurge:
• De exemplu după ce a fost încărcat:
http://www.info.uaic.ro/~flash 13
14. XML – cum se parcurge:
• De exemplu după ce a fost încărcat:
http://www.info.uaic.ro/~flash 14
15. XML – cum se parcurge:
• De exemplu după ce a fost încărcat:
http://www.info.uaic.ro/~flash 15
16. XML – cum se parcurge:
• De exemplu după ce a fost încărcat:
http://www.info.uaic.ro/~flash 16
17. XML – preluarea atribute:
2009
http://www.info.uaic.ro/~flash 17
18. XML – inserarea unui element
http://www.info.uaic.ro/~flash 18
19. XML – alte comenzi
insertChildAfter
insertChildBefore
Replace
hasSimpleContent
hasComplexContent
attributes
Etc, etc…
Sa încercam să facem un exemplu….
http://www.info.uaic.ro/~flash 19
20. In Flex e even easier:
• Punem un DataGrid, apoi:
http://www.info.uaic.ro/~flash 20
21. Some PHP
• Câteva cuvinte despre PHP …
http://www.info.uaic.ro/~flash 21
22. Some PHP
• Am putea ca atunci când facem “load” să nu
dăm ca sursă un fișier PHP – dacă acolo avem o
variabilă, atunci aceasta se poate încărca ca o
variabilă; dacă PHPul generează un XML, PHP-ul
poate fi încărcat ca un XML.
http://www.info.uaic.ro/~flash 22
23. Some PHP
• Putem spre exemplu să preluăm datele dintr-o
bază de date (MySQL), să construim pe baza
acestor date un XML pe care să îl “livrăm”
aplicației Flash.
• Leț Trai It
http://www.info.uaic.ro/~flash 23
24. Să facem un RSS Reader
• În design mode o să avem:
http://www.info.uaic.ro/~flash 24
25. Să facem un RSS Reader
Un TextInput cu
id=myTextInput
http://www.info.uaic.ro/~flash 25
26. Să facem un RSS Reader
Un Buton cu
click="myRSSFeed.send()"
http://www.info.uaic.ro/~flash 26
27. Să facem un RSS Reader
Un DataGrid… revenim
asupra lui
http://www.info.uaic.ro/~flash 27
28. Să facem un RSS Reader
Un TextArea
id="myTextArea"
http://www.info.uaic.ro/~flash 28
29. Să facem un RSS Reader
http://www.info.uaic.ro/~flash 29
30. XML…
XML – sooper trooper: există multe aplicații care
să-l înțeleagă, e ușor de înțeles și de modificat
de către om etc… etc…
Problema este cu XMLurile foarte foarte mari…
Pentru a parcurge XMLul, el trebuie să fie complet
încărcat în memorie după care să i se
construiască arborele DOM. Construirea
arborelui DOM – mare mâncătoare de memorie
http://www.info.uaic.ro/~flash 30
31. ByteArray
• Nu dorim să dăm cu piatra în XML – are avantajele
lui
• Când e vorba de comunicare / reprezentarea
informațiilor utilizând minimum de memorie,
soluția ideală este dată de obiectele de tip
ByteArray (șir de octeți)
• Obiectele de tip ByteArray pot fi citite/scrise super
rapid (darrrr… nu pot fi înțelese de către om, nu
sunt structurate)
http://www.info.uaic.ro/~flash 31