Presentation is loading. Please wait.

Presentation is loading. Please wait.

Conectivitate in AS 3.0 Ariel Chelsau.

Similar presentations


Presentation on theme: "Conectivitate in AS 3.0 Ariel Chelsau."— Presentation transcript:

1 Conectivitate in AS 3.0 Ariel Chelsau

2 Cuprins Ideea de conexiune Pachetul flash.net
Tipuri de conexiuni in AS 3.0 Un exemplu practic: chat in AS 3.0

3 Ideea de conexiune O “legatura” existenta intre doua entitati software diferite, care ofera posibilitati de comunicare intr-un singur sens sau in ambele sensuri. Ce presupune o conexiune pentru a fi initiata si utilizabila?

4 Ideea de conexiune Un canal de comunicare
Identificatori diferiti pentru calculatoare diferite(IP-uri) Identificatori diferiti pentru aplicatii diferite(Portu-uri) Un protocol(set de reguli care sa medieze trimiterea de date) Ex.: Simplul fapt ca exita ideea de IP si Protocol constituie in sine un protocol

5 Ideea de conexiune Toate detaliile “de sub capota” de tipul IP, port, protocol sunt codate in cadrul sistemului de operare. Orice sistem de operare capabil sa gestioneze conexiuni remote are implementati algoritmii de trimitere a datelor.

6 Ideea de conexiune Conexiunile pot fi ignorate sau mentinute
Ex: Internetul, pentru simplificarea paradigmei client-server din cadrul protocolului HTTP, ignora conexiunea. El doar raspunde cu un header specific si pagina sau alte date cerute. Ex: Un joc pe desktop online mentine conexiunea iar serverul notifica clientii pe baza conexiunii deschise o singura data.

7 Ideea de conexiune Conexiunile pot fi locale sau la distanta(remote).
Ex: Intre doua procese ruland pe acelasi calculator(UNIX le denumeste pipes). Ex: Intre doua procese ruland pe calculatoare diferite, deci care utilizeaza functiile placii de retea.

8 Ideea de conexiune Inglobarea partilor componente ale unei conexiuni de date remote duce la abstractizarea numita socket. Definitia data de ARPA pentru socket: “A socket is defined to be the unique identification to or from which information is transmitted in the network”

9 Pachetul flash.net Clasele din acest pachet creeaza conexiuni sau ofera alte facilitati. Clase pentru lucrul cu fisiere FileFilter FileRefrence FileRefrenceList Clase pentru lucrul cu fisiere in format video -NetStrem -NetConnection Clase pentru stocarea datelor local(prin intermediul cookie-urilor) -SharedObject

10 Pachetul flash.net Tot in cadrul pachetului flash.net apar si clasele folosite la aplicatii anterioare pentru download-ul imaginilor sau a fisierelor XML. -URLLoader -URLRequest -URLVariables etc.

11 Pachetul flash.net Pachetul ofera package-level functions pentru utilitati precum: deschiderea unei ferestre de browser, trimiterea de URLRequest-uri. Ex.:navigateToURL(urlRequest, window) Aceste functii nu necesita instantierea unei clase ci pur si simplu ofera servicii utilizatorului pachetului. Se aseamana cu setInterval().

12 Pachetul flash.net Clasele destinate comunicarii la distanta(intre doua calculatoare diferite) se numesc Socket si XMLSocket Socket trimite datele in format binar XMLSocket trimite datele in format XML de tipul: <user>Ion</user><mesaj>Salut</mesaj>

13 Tipuri de conexiuni in AS 3.0
Conexiunile, dupa cum am amintit anterior, pot fi locale sau remote: Clasa LocalConnection: Practic, se aloca o zona de memorie care e cunoscuta de ambele aplicatii iar acestea o folosesc ca pipe.

14 Tipuri de conexiuni in AS 3.0
LocalConnection Trimitator:

15 Tipuri de conexiuni in AS 3.0
Primitor

16 Tipuri de conexiuni in AS 3.0
Socket: Trimite date remote in format binar. Dispune de multe metode de trimitere a datelor Ex: writeByte(value:int):void writeBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void writeDouble(value:Number):void

17 Tipuri de conexiuni in AS 3.0
Socket:

18 Tipuri de conexiuni in AS 3.0
Socket(continuare):

19 Tipuri de conexiuni in AS 3.0
Socket-ul si XMLSocket sunt inrudite, doar ca difera metoda de trimitere a mesajelor, dupa cum vom vedea mai incolo. Socket trimite in format binar, XMLSocket trimite….

20 Tipuri de conexiuni in AS 3.0
….in format XML. E o versiune mult simplificata a lui Socket. Necesita mult mai putine cunostinte tehnice pt. setare(de asta am si folosit-o) Are 3 functii:

21 Tipuri de conexiuni in AS 3.0
Si 5 event-uri: Pentru folosirea clasei, e nevoie de instantierea ei si mai apoi de setarea handler-erlor pt. event-urile de mai sus. Important: Este bine ca toate event-urile sa fie tratate pt. ca pot aparea multe probleme neasteptate.

22 Tipuri de conexiuni in AS 3.0
Un alt lucru foarte important in comunicarea client-server este terminarea mesajului cu un 0 byte. Asta deoarece serverul(si clientul) trebuie neaparat sa stie cand se termina mesajul. Altfel, se blocheaza, crezand ca mai este ceva de trimis. Send() pune 0 byte pt. noi, serverul trebuie sa o faca el. O sa vedem cum.

23 Un exemplu practic: chat in AS 3.0
Pentru a demonstra utilitatea teoriei din slide-urile precedente am realizat un chat room avand cu un client in Adobe Flash 9 si un server scris in Java 6. Important: ActionScript singur nu poate face acest sistem.

24 Un exemplu practic: chat in AS 3.0

25 Un exemplu practic: chat in AS 3.0

26 Un exemplu practic: chat in AS 3.0

27 Un exemplu practic: chat in AS 3.0
De retinut: -orice conexiune are ca parametri IP-ul si port-ul. -serverul asteapta clientii sa se conecteze, le preia mesajele si le scrie in output cu 0 byte la sfarsit!!! -clientul trimite si el mesaje, la fel, cu 0 byte la sfarsit!!!

28 The end


Download ppt "Conectivitate in AS 3.0 Ariel Chelsau."

Similar presentations


Ads by Google