Interazione avanzata su web: dai plugin ad Ajax Seminario di Interazione Locale e Remota Corso di Laurea Magistrale in Informatica A.A. 2009/2010 Emanuele.

Slides:



Advertisements
Presentazioni simili
Gli ipertesti del World Wide Web Funzionamento e tecniche di realizzazione a cura di Loris Tissìno (
Advertisements

Accessibilità, usabilità, credibilità
Corso di Fondamenti di Informatica
Applet Java.
Unità D2 Database nel web. Obiettivi Comprendere il concetto di interfaccia utente Comprendere la struttura e i livelli che compongono unapplicazione.
(Appunti da Scott Mitchell, James Atkinsons - Active Server Pages 3.0 – ed. Apogeo) Le pagine ASP.
PHP.
INTERNET : ARPA sviluppa ARPANET (rete di computer per scopi militari)
Java Enterprise Edition (JEE)
Mantenimento dello stato Laboratorio Progettazione Web AA 2009/2010 Chiara Renso ISTI- CNR -
Laboratorio di Progettazione Web Introduzione AA 2009/2010 Chiara Renso ISTI - CNR -
UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIA
Java2 Esercitazioni del corso di Sistemi Informativi Marina Mongiello
Tecnologie di Sviluppo per il Web
REST Il paradigma REST è basato su un protocollo di comunicazione stateless, client-server, chacheable e scalabile, tipicamente HTTP (ma non necessariamente,
Internet e Web Dinamico
Linguaggi per il Web Laboratorio di Applicazioni Informatiche II mod. A.
1 Basi di dati e Web Prof. Stefano Paraboschi Prof. Barbara Pernici.
Analisi dettagliata e design B. Pernici M.G. Fugini AA
Interazione avanzata su web: dai plugin ad Ajax
UNIVERSITA DEGLI STUDI DI PAVIA Corso di Laurea Interfacoltà in Comunicazione Interculturale e Multimediale Usabilità dei Siti Flash: problemi e strategie.
Architettura Three Tier
CORSO DI INFORMATICA LAUREA TRIENNALE-COMUNICAZIONE & DAMS
Sistema Informativo Territoriale del bacino dell’Adige in ambiente WEB
Introduzione a AJAX - Asynchronous Javascript And Xml
Cos’è un CMS? Content Management System
Architettura Java/J2EE
Realizzazione siti web Pagine web dinamiche - javascript.
1 Internet e nuove tecnologie Anno Accademico Prof. Flavio De Paoli Dott. Marco Loregian.
Ing. Enrico Lecchini BetaTre S.r.l.
Modulo 7 – reti informatiche u.d. 1 (syllabus – )
Come funziona il PHP.
Guida IIS 6 A cura di Nicola Del Re.
COMUNICAZIONE ONLINE, RETI E VIRTUALITA MATTEO CRISTANI.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria “Enzo Ferrari” – Sede di Modena Corso di Laurea Specialistica in Ingegneria Informatica.
Fare clic per modificare lo stile del titolo Fare clic per modificare stili del testo dello schema – Secondo livello Terzo livello – Quarto livello » Quinto.
Server Web in una rete Windows Sommario Meccanismi di accesso remoto Meccanismi di accesso remoto Introduzione ai Server Web Introduzione ai Server.
Elaborazioni server-side: dalle CGI al PHP
Basi di Dati e Sistemi Informativi
Sistemi Informativi sul Web
Applicazioni Web HTTP, HTML e CSS Elaborato da Gianluca Lauteri e Daniele Filannino.
Common Gateway Interface. Dynamic HTML le risposte inviate al client sono (parzialmente o totalmente) create on-the-fly (al volo) dopo aver ricevuto il.
Il World Wide Web Lidea innovativa del WWW è che esso combina tre importanti e ben definite tecnologie informatiche: Documenti di tipo Ipertesto. Sono.
Amministrazione della rete: web server Apache
ASP – Active Server Pages - 1 -Giuseppe De Pietro Introduzione ASP, acronimo di Active Server Pages, sta ad indicare una tecnologia per lo sviluppo di.
Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.
CORSO INFORMATICA BASE
Corso di WebMaster Mercoledì 14 Novembre. Parte I – Introduzione al Corso Lezione 1: Presentazione Descrizione Breve del Corso Semplice Valutazione.
TROVA FILM Progetto di Tecnologie Web anno accademico 2013/2014 DEL VECCHIO GIANLUCA IOVINO PASQUALE
Lezione 8.
Protocolli e architetture per WIS. Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di.
Creato da Riccardo Nuzzone
Realizzazione Sito Web
Internet e HTML Diffusione di informazioni mediante la rete Internet.
Programmazione Web Presentazione del corso /2015.
Eprogram informatica V anno. ASP.NET Introduzione ASP.NET (Active Server Page) è il linguaggio che, sfruttando la tecnologia.NET, permette di: -scrivere.
Analisi dettagliata e design
HTML HTML e il web.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Protocolli e architetture per WIS. Cronologia di Internet ricerche sulla commutazione di pacchetto (Leonard Kleinrock) 1967 Nasce il progetto.
Relatore: Prof. Ing. Stefano SalsanoLaureando: Flaminio Antonucci.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 -Protocolli del Web Ernesto Damiani Lezione 1 – World Wide.
Servizi Internet Claudia Raibulet
Tecnologie lato Server: i Server Web © 2005 Stefano Clemente I lucidi sono in parte realizzati con materiale tratto dal libro di testo adottato tradotto.
Eprogram informatica V anno.
PHP.  HTML (Hyper Text Markup Language)  CSS (Cascading Style Sheets)  Javascript (linguaggio di programmazione client)  PHP ( Hypertext Preprocessor.
Corso Web Developer Lezione 2 – HTML e ASP. I limiti delle pagine HTML Nella lezione precedente abbiamo visto che con HTML e JavaScript è possibile scrivere.
Eprogram informatica V anno. Programmare in rete.
Edizione Risorse di Rete e Web 2.0 per il lavoro Sociale Corso di Studio in Servizio Sociale Le applicazioni Web e i CMS (Content Managment System)
ASP – Active Server Pages - 1 -Giuseppe Tandoi ASP – Active Server Pages Tecnologia per lo sviluppo di pagine dinamiche.
Transcript della presentazione:

Interazione avanzata su web: dai plugin ad Ajax Seminario di Interazione Locale e Remota Corso di Laurea Magistrale in Informatica A.A. 2009/2010 Emanuele Panizzi 18 marzo 2010

Emanuele Panizzi 18/3/10 Interazione avanzata su web Indice Web1.0: Pagine statiche, dinamiche, Applicazioni web (2000) Rich Internet Applications Web2.0: Tecnologie Web2.0: mashup Interazione QUI: ESEMPI

Emanuele Panizzi 18/3/10 Interazione avanzata su web RICHIESTA WEB Server serverclient Browser url info sul richiedente (tipo di browser, lingua, etc.)

Emanuele Panizzi 18/3/10 Interazione avanzata su web RISPOSTA File.html WEB ServerBrowser serverclient pagina web statica: il contenuto è sempre lo stesso file html

Emanuele Panizzi 18/3/10 Interazione avanzata su web File.php WEB ServerBrowser RISPOSTA serverclient.php PHP File.html pagina web dinamica: il contenuto può variare di volta in volta condizioni esterne: ora, informazioni ricevute con la richiesta, etc. file html

Emanuele Panizzi 18/3/10 Interazione avanzata su web File.php WEB ServerBrowser RISPOSTA serverclient.php PHP File.html DBMS file html pagina web dinamica: il contenuto può variare di volta in volta e da utente a utente condizioni esterne: ora, informazioni ricevute con la richiesta, etc.

Emanuele Panizzi 18/3/10 Interazione avanzata su web File.php WEB ServerBrowser RISPOSTA serverclient.php PHP File.html con Javascript DBMS file html pagina attiva. il browser può modificare ulteriormente la pagina in base ad azioni dellutente (es. mouse over) condizioni esterne: ora, informazioni ricevute con la richiesta, etc. JAVASCRIPT

Emanuele Panizzi 18/3/10 Interazione avanzata su web Pagine statiche Lato server: –File statico –Stateless Lato client (browser): –Visualizzazione –Interazione: link ipertestuali, widget dei form, semplici animazioni (es. roll-over), controllo dati form rollover

Emanuele Panizzi 18/3/10 Interazione avanzata su web Pagine dinamiche / web apps Input: –Dal browser (lingua, IP, tipo di browser…) –Dallutente Metodo GET: …index.php?q=musica&ln=it Mediante form Metodo POST Output: una pagina html Stato: –Modifiche DB –Stato dellutente (sessione) –cookies

Emanuele Panizzi 18/3/10 Interazione avanzata su web Differenza applicazione / pag web Tempi di risposta Interfaccia modificata per parti Elaborazione asincrona rispetto allintervento dellutente excel

Emanuele Panizzi 18/3/10 Interazione avanzata su web Rich Internet Application (RIA) Applicazioni web con stesse feature e funzionalità di applicazioni desktop [wikipedia] Girano nel browser Client: UI Server: elaborazione Uso di più server per diversi dati

Emanuele Panizzi 18/3/10 Interazione avanzata su web Pro e Contro delle RIA Pro: –indipendenti da OS; –no installazione –carico bilanciato tra client e server –minor traffico di rete, maggiore efficienza nella comunicazione client-server Contro: –Sandbox (restrizione sulle risorse) –Il browser deve supportare determinati linguaggi e standard ( Javascript, CSS, DOM scripting, XMLHTTPRequest (API per comunicazione client/server)) –Efficienza dellesecuzione di programmi nel browser –Tempi di trasferimento del codice sul client

Emanuele Panizzi 18/3/10 Interazione avanzata su web Esempi di RIA Google suggest: Edit grid: Google docs: Google calendar: Gmail: Google Maps: The unofficial web application list:

Emanuele Panizzi 18/3/10 Interazione avanzata su web Metodi e tecnologie Javascript AJAX Flash ActiveX Java applets Java Web Start Linguaggi per interfacce utente: XUL, SMIL, SVG REST Json

Emanuele Panizzi 18/3/10 Interazione avanzata su web AJAX Asinchronous Javascript And XML Consiste nelluso congiunto di un gruppo di tecnologie, quali: –XHTML (o HTML) e CSS –DOM –XMLHTTPRequest –XML/Json –Javascript

Emanuele Panizzi 18/3/10 Interazione avanzata su web REST Representational State Transfer Trasmettere dati su HTTP senza uso di layer addizionali Resources URI Interfaccia: operazioni / content-types Protocollo: Client/Server; stateless; cacheable; layered

Emanuele Panizzi 18/3/10 Interazione avanzata su web JSON (Javascript Object Notation) Semplice formato per scambio dati Alternativo a XML, usato in AJAX con Javascript Eval(); Il server restituisce codice Javascript che può essere eseguito e aggiorna lo stato dellapplicazione client

Emanuele Panizzi 18/3/10 Interazione avanzata su web Mashup Sito o applicazione web che include dinamicamente informazioni provenienti da più fonti flickrvision

Emanuele Panizzi 18/3/10 Interazione avanzata su web Interazione con le RIA Caratteristiche generali: –Lutente interagisce direttamente con elementi della pagina (inline editing, drag&drop, pan di una mappa) –Update di parte della pagina senza reload –Dettagli mostrati nella stessa pagina –Feedback, conferme e messaggi derrore mostrati nella stessa pagina

Emanuele Panizzi 18/3/10 Interazione avanzata su web Interazione: Problemi aperti 1. Quanta ricchezza nellinterfaccia? –Abitudine al modello a pagina, poca interazione –Larga base di utenti non esperti 2. Come far conoscere lesistenza e luso di strumenti interattivi nella pagina (perceived affordance)? Kayak slider:

Emanuele Panizzi 18/3/10 Interazione avanzata su web Interazione: Problemi aperti 3. Lutente si accorge della parte di pagina modificata? –Fuoco/luogo dellattenzione –Attrazione dellattenzione (colori, movimento) –Un solo cambiamento alla volta

Emanuele Panizzi 18/3/10 Interazione avanzata su web Interazione: Problemi aperti 4. Uso dei tasti del browser: BACK, FORWARD, RELOAD, STOP –Dove andare? –BACK/FORWARD => UNDO/REDO ? –Tasto STOP non sempre attivo –Reload = RESET ? –Stato del sistema

Emanuele Panizzi 18/3/10 Interazione avanzata su web Interazione: Problemi aperti 5. URL della pagina –LURL si deve riferire alla pagina iniziale o allo stato attuale del programma? –È possibile mettere un bookmark? –Uso del #

Emanuele Panizzi 18/3/10 Interazione avanzata su web Interazione: Problemi aperti 6. Ritardi nelle risposte –Siamo in una desktop application o in una pagina web? Lutente ha 2 aspettative diverse –Visual feedback 7. Risposte troppo veloci –Pausa forzata

Emanuele Panizzi 18/3/10 Interazione avanzata su web FINE

Emanuele Panizzi 18/3/10 Interazione avanzata su web Plugin Programma che interagisce con il browser –Scambia dati con il browser –Segue un protocollo stabilito dal browser –Usa risorse del browser Tipici plugin –Lettura o editing di particolari tipi di file pdf reader quicktime win media player flash player

Emanuele Panizzi 18/3/10 Interazione avanzata su web Applet Applicazioni lato client, compilate Lambiente in cui sono eseguite è in genere un plugin Hanno una propria interfaccia, anche incorporata nella pagina Comunicano con un host Clock spreadsheet

Emanuele Panizzi 18/3/10 Interazione avanzata su web Java Web Start Applicazioni che non girano nel browser Sandbox meno restrittiva Lanciate direttamente dal web

Emanuele Panizzi 18/3/10 Interazione avanzata su web Web 2.0 Web 2.0 generally refers to a supposed second- generation of Internet- based services such as social networking sites, wikis, communication tools, and folksonomies that let people collaborate and share information online in previously unavailable ways. In contrast to the first generation, Web 2.0 gives users an experience closer to desktop applications than the traditional static Web pages. [wikipedia]

Emanuele Panizzi 18/3/10 Interazione avanzata su web RPC / REST getUser() addUser() removeUser() updateUser() getLocation() addLocation() removeLocation() updateLocation() listUsers() listLocations() findLocation() findUser() exampleAppObject = new ExampleApp('example.com:1234') exampleAppObject.removeUser('001') (one for each user) (one for each location) GET POST