Caratteristica Web app. Desktop app.

Documenti analoghi
Metodologie Informatiche applicate al Turismo

2011 Politecnico di Torino 1

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Le mie immagini su WEB: l ABC per iniziare. 6 maggio 2008

Tecnologie e Programmazione Web

b) Dinamicità delle pagine e interattività d) Separazione del contenuto dalla forma di visualizzazione

Prof. Pagani Corrado HTML

Strumenti a disposizione

19. LA PROGRAMMAZIONE LATO SERVER

Manuali.net. Nevio Martini

Parte II.4 World Wide Web

Events: Track your favorite artists

Linguaggio HTML. Reti. Il Linguaggio HTML. Il Linguaggio HTML

Siti interattivi e dinamici. in poche pagine

Esercizi di JavaScript

UN TOPO SFUGGENTE. CoderDOJO su Javascript - Trento. Augusto Ciuffoletti. 26 maggio 2015

Architetture Web I Server Web e gli Standard della Comunicazione

A. Lorenzi Pagine ASP

INTRODUZIONE AI PRINCIPI DELLO SVILUPPO DI APPLICAZIONI WEB INTERATTIVE

Fabio Proietti (c) 2012 Licenza:

Comunicazione Digitale

Laboratorio Progettazione Web Applicazioni Web Lezione 2. Andrea Marchetti IIT-CNR 2011/2012

PHP. A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO SERVER E MOBILE COMPUTING Atlas. Copyright Istituto Italiano Edizioni Atlas

N.E.A.T. ( Neutral Environment Application Tools )

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer

Navigare in Internet Laboratorio di approfondimento la creazione di siti web e/o blog. Marco Torciani. (Quinta lezione) Unitre Pavia a.a.

Come funziona internet

INFORMATICA. Prof. MARCO CASTIGLIONE. Istituto Tecnico Statale Tito Acerbo - PESCARA

AJAX. Goy - a.a. 2006/2007 Servizi Web 1. Cos'è il Web 2.0

GIS e Geo WEB: piattaforme e architetture. Docente: Cristoforo Abbattista abbattista@planetek.it

Indice PARTE PRIMA L INIZIO 1

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

JavaScript - 4. Modello ad oggetti tradizionale. L ambiente del web browser 1

AJAX e altre applicazioni di Javascript. Luca Fabbri

SIREA: SISTEMA DI REVISIONE DELLE ANAGRAFI

BASI DI DATI Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL

Seminari Eucip, Esercizio e Supporto di Sistemi Informativi

sito web sito Internet

Architetture Web I Server Web e gli Standard della Comunicazione

HTML INFORMATICA PER LE APPLICAZIONI ECONOMICHE PROF.SSA BICE CAVALLO

Flavio De Paoli

Il Protocollo HTTP e la programmazione di estensioni Web

Corso di Web Programming

Tecniche Multimediali

HTML 1. HyperText Markup Language

Utilizzo collegamento remoto

Reverse Engineering di Rich Internet Applications basate su AJAX

Corso di HTML. Prerequisiti. Modulo L3. 1-Concetti generali. Browser Rete Internet Client e server. M. Malatesta 1-Concetti generali-12 28/07/2013

Applicazioni Web: meccanismi per il passaggio di informazioni tramite HTTP Corso di Applicazioni Telematiche

Siti web centrati sui dati (Data-centric web applications)

Progetto B. Utenti. Di conseguenza si potranno avere solo utenti di questi tipi

Implementazione di MVC. Gabriele Pellegrinetti

Lezione di Basi di Dati 1 18/11/ TECNOLOGIE PER IL WEB: CGI - AJAX SERVLETS & JSP

Un framework a supporto della sperimentazione di tecniche euristiche. per l ottimizzazione di pagine Web per Screen Readers

XML e Windows Phone. Semplice tutorial per l'utilizzo di documenti e dati XML in un'app per Windows Phone.

HTML HTML. HyperText Markup Language. Struttura di un documento. Gli elementi essenziali di un documento HTML sono i seguenti TAG: <HTML>...

Progettazione Web Applicazioni client-server

Corso Creare Siti WEB

Introduzione ad AJAX

L aspetto dei file HTML

SISTEMA DI CONTROLLO E GESTIONE STAZIONI DI RICARICA E-CORNER PER VEICOLI ELETTRICI

Reti di calcolatori, Internet e Web

Port Community System del Porto di Ravenna CONFIGURAZIONE

Introduzione a PHP Gestione dei Dati e della Conoscenza

PROGRAMMA SVOLTO ANNO SCOLASTICO 2014/2015

Laboratorio di Basi di Dati

aggiunge del testo nella parte finale del tag, in questo caso la stringa da controllare.


Manuale utente. Versione 6.9

Programma del Corso. Laboratorio

Corso di Applicazioni Telematiche

Introduzione a XAMPP. Andrea Atzeni (shocked@polito.it) Marco Vallini (marco.vallini@polito.it) Politecnico di Torino Dip. Automatica e Informatica

Applicazione ASP di esempio

Appunti della lezione del 8/10/2008 del corso di Basi di dati I - Università del Salento

AnthericaCMS. Gestisci in autonomia i contenuti del tuo sito-web

Stack protocolli TCP/IP

Corso di PHP. Prerequisiti. 1 - Introduzione

Web e Server-side Computing: Richiami sulla tecnologia Web e FORM HTML

Applicazioni web centrati sui dati (Data-centric web applications)

HTML. Hyper Text Markup Language

venerdì 31 gennaio 2014 Programmazione Web

World Wide Web. Web e Server-side Computing: Richiami sulla tecnologia Web e FORM HTML. Il Successo del Web. Protocolli di accesso

PHP e MySQL. Scripting server-side per accesso a DB MySQL


Applicazione client-server in PHP con database MySQL

Modulo 1 Information Communication Technology. ICT e computer... Pag. 6 Classificazione dei computer...» 8

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Laboratorio Progettazione Web PHP e MySQL. Andrea Marchetti IIT-CNR 2013/2014

APPENDICE 4 AL CAPITOLATO TECNICO

Introduzione allo sviluppo Web. Studium Generale, a.a , II semestre

Lavorare con MySQL Parte Seconda.

Modulo 1 Software e Reti. Prof.ssa Francesca Rammairone

I Tag dell html. Parte quarta

Un client su arduino invia i dati acquisiti ad un database

2Dove vogliamo arrivare:

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012

Il linguaggio HTML - Parte 3

Architetture Web: un ripasso

Protocolli e architetture per WIS

I benefici dei dispositivi e delle tecnologie Web Automation applicati ai sistemi per le Public Utility

Transcript:

Filippo Geraci

Caratteristica Web app. Desktop app. Grafica buona Illimitata Interattivita buona Illimitata Uso della rete Molto elevato Dipende da app. Accessibile da Ogni computer Dove installato Aggiornamenti Server Desctop 2

Programma batch Struttura del programma Leggi input Effettua computazione Produci output Programma ad eventi Struttura del programma Aspetta un evento Trova il metodo associato all evento Gestisci l evento ripeti L aggiornamento del software consiste spesso nel catturare e gestire nuovi eventi 3

WWW (Wold Wide Web grande ragantela mondiale ) è uno spazio corredato da servizi digitali destinato alla pubblicazione di contenuti multimediali pubblicabili da chiunque lo desideri Rete Internet: la tecnologia su cui poggia il web e i suoi servizi. Server Web: sono dei software che gestiscono delle richieste effettuate dai client Client Web: sono dei software che effettuano delle richieste ai server web (ad esempio una pagina html) Browser: è il client che consente di visualizzare pagine web Protocollo: insieme di regole per la comunicazione tra computer. Ogni servizio su internet ha un proprio protocollo. Http: il protocollo di comunicazione usato per il web Html: è un linguaggio di markup con cui sono fatte le pagine web E un linguaggio di markup (contrassegno basato su tag ) per la formattazione di testo su web ( definito e gestito dal consorzio W3C 4

CSS Presentazione Struttura HTML 5

HTML: indica l inizio e la fine della pagina html. HEAD: contiene tutte le intestazioni della pagina (tipicamente non visualizate) Titolo, inclusione di javascript o CSS, meta tags META: contiene informazioni sulla pagina Autore, keywords, data di creazione BODY: contiene tutta la parte visibile della pagina 6

DIV: viene usato come contenitore di parti della pagina che devono avere caratteristiche comuni Esempio: visualizzazione tramite CSS FORM: contenitore di una maschera per l inserimento dati e l invio al web server Il web server risponde inviano una nuova pagina web visualizzata dal browser al posto di quella che ha fatto la richiesta Sulla modifica di questo meccanismo di comunicazione si basa il web 2.0 7

Specificato tramite il parametro metthod del tag form Si passano in due modi: get, post. Get: i dati concatenati nella URL della pagina di risposta http://host/page?param1=value1&param2=value2 Post: l'invio dei dati avviene dopo aver contattato la pagina sul web server Usato per passare molti dati o non farli vedere/ modificare all utente 8

Pagina web di richiesta Pagina web di risposta Richiesta HTTP Risposta HTTP Web server Browser HTML Parametri richiesta HTTP Modulo applicazione 9

Struttura dei tag annidati definisce un albero <html> <head> <body> <title> CSS <meta> 10

Rappresentazione ad oggetti della pagina web Rappresentazione ad albero Si possono aggiungere/rimuovere elementi o cambiarne gli attributi Source: http://www.tutorialspoint.com/images/html-dom.jpg 11

Eseguito dal browser Si evolve quindi ci sono problemi di compatibilità Microsoft non rispetta gli standard Esistono librerie che attenuano le difficoltà La programmazione lato client consente di Validare l input prima di mandarlo al server Catturare eventi e reagire ad azioni dell utente Aggiornare parti della pagina senza richiederla al server 12

Nome funzione onclick onchange onfocus onsubmit onmouseover onmouseout onmousedown onmouseup onkeydown onkeypress onkeyup onload Quando viene catturata Click del mouse su un elemento L oggetto cambia stato L elemento ottiene il focus Sottomissione del form Il mouse si muove sopra l elemento Il mouse esce dall elemento Pressione bottone sinistro del mouse Rilascio bottone sinistro del mouse Pressione di un tasto Pressione e rilascio di un tasto Rilascio di un tasto Fine caricamento della pagina 13

document.getelementbyid(id) document.getelementsbytagname(tag) <tag>testo</tag> innerhtml Testo outerhtml <tag>testo</tag> 14

CGI programmi stand-alone lanciati dal web server Producono un documento HTML in output Ricevono parametri in input tramite HTTP Programmi inseriti dentro la pagina web (php, ASP, JSP) Eseguiti dentro il processo del web server Errori di programmazione possono influenzare le prestazioni del web server Client e server usano linguaggi diversi A cosa servono le pagine dinamiche? Personalizzazione dei risultati Interazione con database Applicazioni web 15

2 tier: un solo server per script engine: logica applicativa e database 3 tier dual host: server separati per database e script engine

Il codice viene inserito all interno della pagina Interpretato da un modulo eseguito dal web server stampa l html che verrà visualizzato nella pagina <html>... <body> <?php echo Hello world ;?> </body> </html> 17

<?php // Connessione al database mysql_connect( host, user, password ); mysql_select_db( dbname ); // seleziona dato da una tabella $nome = filippo ; $res = mysql_query( SELECT * FROM people WHERE nome= $nome ; ); $filippo = mysql_fetch_assoc ($res); Print_r ($filippo);?> Nome Cognome Age Filippo Geraci 33 Mario Rossi 40 people array ( [ nome ] => Filippo [ cognome ] => Geraci [ age ] => 33 ) 18

$_POST[ nome ] 19

$_GET[ nome ] 20

So scrivere l html So come modificarlo dinamicamente tramite javascript So costruire form per passare parametri al server chiamando altre pagine Conosco i meccanismi di comunicazione get e post tra client e server So leggere con php i parametri che mi sono stati passati per fare elaborazioni So interfacciarmi con il database MySQL 21

Asynchronous JavaScript And XML 22

Insieme di tecnologie correlate per lo sviluppo di applicazioni web. Permette di contattare in maniera asicnrona senza interferire con la visualizzazione ed il comportamento di una pagina 23

24

Prototype e un framework javascript che semplifica lo sviluppo di applicazioni web Libreria per accedere al DOM con sintassi ad oggetti semplificata Si fa carico delle differenze tra browser diversi Completamente open source Disponibile a: http://www.prototypejs.org/ 25

Includere la libreria <script type="text/javascript" src= prototype.js"> </script> 26

Pagina html <html> <head> <script type="text/javascript src= prototype.js"> </script> </head> <body> <div id= container"> Scrivi il tuo nome <input type= text id= nome"> <input type= button value= Invia onclick= call ();"> </div> </body> </html> Codice javascript Codice PHP <?php echo $_POST[ name ];?> Filippo 27

Evento Container Pagina web Lato client Lato server 28

Evento Web Server Container Lato client Lato server Pagina web HTML Script lato server Invoca 29

HTML Container Pagina web Lato client Lato server Evento HTML HTML Web Server Script lato server Invoca 30

Non reinventare la ruota Disponibili tanti framweork per: Gestire l interfaccia grafica Gestire la comunicazione con il server Accedere al DOM Animare gli oggetti 31

Libreria di effetti visuali per aggiungere animazioni Libreria per il drag-and-drop Creazione/modifica dinamica di elementi del DOM Controlli ajax Esempio: Completamento automatico, In Place Editing Disponibile su: http://script.aculo.us

Effetti principali: Evidenzia, sposta, opacizza, scala Combinazioni di effetti: Fai apparire, avvolgi, svolgi, lampeggia, vibra, strizza, spegni Altri effetti: Sposta Comportamento dei componenti: Draggable, Droppables, Ordinabile Controlli: Editor in place, autocompletamento altro: Suoni 33

new Effect.Morph('error_message', { // CSS Properties style: 'background:#f00; color: #fff;', // Core Effect properties duration: 0.8 } ); 34

Ce ne sono tante Fanno praticamente di tutto Alcune commerciali alcune open source Non faccio pubblicità, vi mostro qualcosa assemblata da me 35

36

37