ms ajax in php
DESCRIPTION
Cum sa programam in PHP folosit MS Ajax LibraryTRANSCRIPT
MS Ajax in PHP
Călin Ionel [email protected]
Agenda
• Scurtă istorie• XMLHttp Request• Ce este Ajax?• Serrver si Client Centric Programming Model• MS Ajax Library• PHP for MS Ajax Library• Resurse
Scurtă istorie...
• HTML – Inceputurile paginilor web
• Abilitatea de a trimite şi procesa parametrii
• QueryString în URL prin GET
http://www.site.com?id=7
• Trimiterea POST (formulare)
Scurtă istorie…
• Tehnlogii Server-Side
• ASP, PHP, JSP, ColdFusion
• Tehnologii Client-Side
• JS, ActiveX, Appleturi Java, Flash
• Standardizarea
• XHTML
• XML
• CSS
Pro si Contra vechile aplicatii web
• Beneficii
• Administrare centralizată şi versionare
• Cerinţe Minime: Browser şi SO
• Probleme
• Diferenţă de funcţionalitate faţă de aplicaţiile desktop
• Utilizatorii aşteaptă la fiecare refresh de pagină
• Productivitate destul de scăzută
...apoi ceva s-a schimbat
• Lăţimea de bandă s-a mărit odată cu apariţia fibrei optice
• Capabilitatea browserelor şi a calculatoarelora crescut
• A apărut generaţia care foloseşte ecranul pentru a comunica (tel. mobile, pad-uri, laptop-uri, etc.)
• Răspunsul care a apărut la sfârşitul anilor ’90(1997) a fost…
...XMLHttp Request
• Creat de Microsoft în 1997
• Implementat în Internet Explorer 5
• Posibilitatea de a iniţia din JavaScript comunicarea cu serverul în mod asincron
• Nu au loc refresh-uri de pagină
• Tehnologia a fost folosită prima dată în MSDN
• A rămas obscură timp de 5 ani deşi a fost adoptată treptat de cele mai populare browsere
Ce este Ajax?
• AJAX = Asynchronous JavaScript and XML
• Tehnică de Web Development care ajută lacrearea de aplicaţii web interactive folosind o combinaţie DHTML, JavaScript, XMLHttp
• Îmbunătăţeşte experienţa utilizatorului
• Măreşte performanţa aplicaţiei şi a transferului de date
• Navigaţia Web este mult optimizată
ASP.Net Ajax
BrowserClient
Internet Explorer
Firefox
Safari
Microsoft Ajax
Library
Web Server
ColdFusion
Apache & PHP
IIS & ASP.NET• Ajax Extensions• ASP.NET Ajax Toolkit
Server Centric Programming Model
Browser
Prezentare(HTML/CSS)
Aplicaţie ASP.Net
Pagini
Caracteristici UI (de interfaţă)
Randare iniţială
(Interfaţă & Caracteristici)
Date de intrare
Interfaţă Modificată &Caracteristici
Client Centric Programming Model
Browser
HTML/CSS
Aplicaţie ASP.Net
Pagini
Servicii Web
Randare iniţială
(Interfaţă & Caracteristici)
Date
DateCaracteristici de interfaţă
(Script)
Servicii Proxy ASP.NET Ajax
Beneficiile Client Centric Model
• Utilizează din plin DHTML
• Foloseşte Ajax pentru date şi servicii
• Experienţe noi şi uneori spectaculoase
• Transferul de date este scazut
• s.a.m.d.
Microsoft Ajax Library
• Framework ce simplifica lucrul cu JS
• Compatibility Layer pentru diferite browsere şi platforme (IE, Firefox/Mozilla, Safari)
• Script Core Runtime• Clase, namespace, moştenire, interfeţe
• Event Handlers
• Serializare (JSON)
• Clasa de bază şi servicii de networking• Managementul operaţiilor asincrone
• Component Model şi UI Framework• Declarative scripting, Data Binding, Validare
• Componente client• Textbox, Label, Panel, Caracteristici UI (drag and drop, tooltip)
Microsoft Ajax Library• Global Namespace – Contine membrii si tipuri care extind elementele de baza ale
JS-ului facandu-l mai familiar dezvoltatorilor. Include extensii pentru Array, Boolean, Error, Number, Object si String.
• Sys – Reprezinta namespace-ul radacina pentru libraria Microsoft AJAX Library si contine clasele fundamentale si cele de baza.
• Sys.Net – Contine tipurile relative la comunicarea dintre aplicatia client ASP.NET AJAX si serviciul Web de pe server.
• Sys.Serialization – Contine tipuri relative la serializarea datelor pentru aplicatia client ASP.NET AJAX.
• Sys.Services – Contine tipuri care dau acces la unele servicii de autentificare, profile din ASP.NET.
• Sys.UI – Contine tipuri relative la User Interface (UI), cum ar fi controalele, evenimentele si proprietatile din Microsoft AJAX Library.
• Sys.WebForms – Contine tipuri relative la randarea partiala a paginilor.
PHP for Microsoft Ajax Library• O colectie de scripturi PHP care face mai usoara integrarea
intre Microsoft AJAX Library si aplicatiile web
• Ultima versiunea suporta crearea serviciilor web in PHP in asa fel incat Microsoft AJAX Library sa le poata apela foarte usor in codul client
• Versiunile viitoare vor suporta localizarea si globalizarea, debug si release si multe alte caracteristici inspirate din ASP.NET AJAX.
Vreau şi eu!
• Community site http://ajax.asp.net
• Documentatia de bazahttp://www.asp.net/AJAX/Documentation/Live/ClientReference/
• Video Series http://www.asp.net/learn/videos
• Steve Marx’s Bloghttp://www.smarx.com/
• PHP for Microsoft AJAX Libraryhttp://codeplex.com/phpmsajax