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.

Slides:



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

Corso di Fondamenti di Informatica
INTRODUZIONE Il framework.NET. Un po di storia Sin dalla prima versione del sistema operativo Windows (1990 circa), nacque la necessità di far comunicare.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità A1 Introduzione a Java.
JavaScript 1. Per cominciare.
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)
IL LINGUAGGIO HTML Il linguaggio html. Il linguaggio html. Utilizzo dei tag. Utilizzo dei tag. Script Browser I link I link Caricamento dei dati sul server.
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 -
Connessione con MySQL.
Motore di news per portali Web: progetto ed implementazione Relatore: Chiar.mo Prof. Sonia Bergamaschi Tesi di Laurea di: Roberto Delfini Anno Accademico.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Java2 Esercitazioni del corso di Sistemi Informativi Marina Mongiello
XmlBlackBox La presentazione Alexander Crea 7 Giugno 2010 La presentazione Alexander Crea 7 Giugno 2010.
NESSUS.
Modulo o Form in Html.
1 Università della Tuscia - Facoltà di Scienze Politiche.Informatica 2 - a.a Prof. Francesco Donini Active Server Pages.
JavaScript Laboratorio di Applicazioni Informatiche II mod. A.
Linguaggi per il Web Laboratorio di Applicazioni Informatiche II mod. A.
Analisi dettagliata e design B. Pernici M.G. Fugini AA
Introduzione al linguaggio Java
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
Gestione di Progetti Software 2 (A.A. 2004/2005) - Lezione 2 1 JAVA: obiettivi di progetto del linguaggio Nota storica: Il linguaggio JAVA (inizialmente.
Corso di Informatica A.A
4 Cosa è una rete? ã Punto di vista logico: sistema di dati ed utenti distribuito ã Punto di vista fisico: insieme di hardware, collegamenti, e protocolli.
APPLICAZIONI WEB In questo corso impareremo a scrivere un'applicazione web (WA) Marco Barbato - Corso di Applicazioni Web – A.A
ASP Lezione 1 Concetti di base. Introduzione ad ASP ASP (che è la sigla di Active Server Pages) è un ambiente di programmazione per le pagine web. La.
Introduzione ad ASP.net
Architettura Java/J2EE
Corso di PHP.
Ing. Enrico Lecchini BetaTre S.r.l.
Come funziona il PHP.
Analisi (Analista) Progettazione (Progettista) Sviluppo o Traduzione (Sviluppatore) Documentazione.
HTML Creazione di moduli Prof.ssa Daniela Decembrino.
Introduzione alle ASP: primi passi negli script. Frosini Andrea Università degli studi di Siena Dipartimento di Scienze Matematiche.
Basi di Dati e Sistemi Informativi
Sistemi Informativi sul Web
Introduzione alla programmazione web
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.
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.
ASP – Active Server Pages Introduzione Pagine Web Statiche & Dinamiche(ASP)
JavaScript Programmare il client. Cenni storici Alice Pavarani2  Nasce nel 1995 (Netscape): da LiveScript a JavaScript  La risposta di Microsoft: Jscript.
ASP.NET. …un po’ di ASP ASP (Active Server Pages) è una tecnologia Microsoft che consente di scrivere codice eseguibile (script) lato server, inserendo.
INTRODUZIONE A JAVASCRIPT
PHP - PHP: Hypertext Preprocessor. Introduzione PHP (acronimo ricorsivo per "PHP: Hypertext Preprocessor") è un linguaggio di scripting general-purpose.
Protocolli e architetture per WIS. Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di.
1 Corso di Ingegneria del Web A A Domenico Rosaci 19 - Web Applications.
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
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.
Laboratorio di Servizi Web - servlet - Ardissono 1 Chiarimenti su Servlet Note aggiuntive su architettura di applicazione web che usa Servlet per gestire.
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.
12 dicembre Analisi di sicurezza dell’applicazione SISS Security Assessment dell’applicativo e Reversing del client.
Architetture software
LINGUAGGI DI PROGRAMMAZIONE E' un linguaggio formale dotato di una sintassi ben definita che viene utilizzato per scrivere programmi che realizzano algoritmi.
Eprogram informatica V anno. Programmare in rete.
PHP HyperText Prepocessor.  Linguaggio di scripting lato server sviluppato per generare pagine web.  Permette ad un sito web di diventare dinamico 
ASP – Active Server Pages - 1 -Giuseppe Tandoi ASP – Active Server Pages Tecnologia per lo sviluppo di pagine dinamiche.
Transcript della presentazione:

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 delle pagine HTML che possono eventualmente contenere dei programmi con cui generare particolari effetti o interagire con l’utente. Il grosso limite delle pagine HTML è che vengono completamente gestite nel computer dell’utente. Questo vuol dire che nel computer dell’utente dovranno risiedere tutti i dati, i programmi di cui ha bisogno la pagina WEB.

Pagine Web Statiche

Queste pagine sono pagine così dette statiche ovvero dove l’aspetto ed il contenuto delle pagine viene impostato alla creazione delle stesse e non è dipendente dall’interazione con l’utente. Possono contenere animazioni o script per “simulare” un interazione con l’utente che però non modificano i dati in possesso dell’utente stesso.

Pagine dinamiche Il protocollo HTTP non permette lo sviluppo di applicazioni complesse che coinvolgano l’elaborazione oltre al passaggio di dati. Occorre costruire delle applicazioni client/server in cui il server non si limita a restituire la pagina richiesta ma può eseguire delle elaborazioni o dei programmi per generare delle pagine dinamicamente.

Esempi di pagine web dinamiche

Client Server Richiesta HTTP default.htm IIS/Apache Risposta HTTP Request/Response Http

Client Server Richiesta HTTP Active Server Pages engine default.aspx IIS JScript VB / C# Esecuzione ADO.NET Recupero risultati Risposta HTTP ProductType=rock+shoes ASP: flusso dell’applicazione

I Livelli in un’applicazione web Un’applicazione Web si sviluppa su tre livelli logici presentazione intermedio dati Non sempre i livelli logici di un’applicazione Web corrispondono a locazioni fisiche sulla rete

Livello Presentazione Il livello di presentazione costituisce l’interfaccia utente dell’applicazione Web e corrisponde al client. Esso è costituito da vari componenti combinati tra loro: browser, documenti HTML con Script lato client, applet Java, controlli ActiveX.

Livello intermedio Il livello intermedio di un’applicazione Web corrisponde alla componente elaborativa dell’applicazione: Le modalità di realizzazione del livello intermedio dipendono dalle caratteristiche e dalle tecnologie supportate dal server Web :può essere costituito da un insieme di script, componenti e programmi interagenti tra di loro e con il server Web. Alcune delle tecnologie più comuni: Common Gateway Interface (CGI), Internet Server Application Interface (ISAPI), Active Server Pages (ASP), PHP, Java Servlet.

Livello Dati Il livello dati fornisce servizi non direttamente disponibili tramite il Server Web; questi servizi sono generalmente forniti da applicazioni indipendenti dall’ambiente Web. Tipici esempi di applicazioni presenti a questo livello sono: Server dati (DBMS). Server di mail (POP, SMTP). Server di documentazione elettronica.

I livelli di una applicazione web dati Livello dati Livello intermedio Livello presentazione

Tecnologie web Sia i livelli presentazione che intermedio possono avere una componente elaborativa. La tecnologia utilizzata ha caratteristiche profondamente diverse a seconda che il livello interessato sia presentazione o intermedio. Le tecnologie web impiegate in un’applicazione web si chiamano lato server (server-side) e lato client (client side)

Tecnologie client-side e server-side tecnologia server side: il peso della computazione risiede tutta sul server tecnologia client-side quando la computazione avviene principalmente sul browser. Generalmente le applicazioni web complesse usano strategia ibrida

Tecnologia Client Side E' la parte di programmazione che coinvolge il browser web ed è quindi dipendente dal tipo (e versione) del browser usato. Alcuni linguaggi client-side non sono supportati da alcuni browser – ad es. VBscript è supportato solo la IExplorer. Uno standard è Javascript - ECMA e ISO. Uno script può comportarsi in modo diverso nei vari browser web. Tipicamente la operazioni effettuate client side sono di interazione stretta con l'utente – ad es. rollover sui tasti o il controllo di dati inseriti tramite FORM (moduli). Generalmente abbiniamo alla programmazione client side compiti semplici e di interazione immediata con l'utente.

Tecnologia Server Side La programmazione server side si presta a maggiori possibilità e a complessità di computazione maggiore, nonche’ all’immagazzinamento dei dati. L'interattività non è immediata in quanto è il server che esegue la parte di programma. Avere la possibilità di programmare la parte server ci apre la possibilità per far fare al server qualcosa in più del semplice restituire pagine HTML che già risiedono sul disco. La maggior parte dei siti web che consultiamo ogni giorno sono di fatto applicazioni server-side con parte meno rilevante client-side: portali, commercio elettronico, blog….,

Tecnologia Server Side La tecnologia server-side permette di creare pagine dinamiche, ovvero pagine che non sono presenti effettivamente sul server al momento della richiesta da parte del browser, ma che vengono create e composte dinamicamente dal server web, eventualmente servendosi del livello dati, dietro richiesta esplicita da parte del browser. Chiaramente il server web deve essere dotato di tecnologia in grado di “costruire” su richiesta le pagine, assemblando insieme i dati e spedirle al browser.

Architettura Server-Side Eventuali parametri Elaborazione SELECT... Parte statica Parte dinamica

Tecnologie client/server side Tecnologie web Computazione Server Side Computazione Client Side Programmi Compilati Script Server Side Programmi Compilati su client Script Client Side Tecnologie ibride CGI Java Servlets ASP.NET PHP ASP Cold Fusion Java Server Pages ASP.NET Java Applets Javascript VBScript

Tecnologie Server side L'utente può interagire con il server ad esempio sottomettendo dati che il server elabora per restituire poi una risposta sotto forma di pagina HTML. Un tipico caso e' l'accesso da parte dell'utente ad un database che risiede sul server. In questo caso la pagina web funziona come una interfaccia per accedere ai dati che risiedono sul server. Ci sono varie tecnologie server side utilizzate tra cui Common Gateway Interface (CGI), PHP, ASP.NET, Servlet, JSP.

Tecnologia Server Side  La computazione avviene lato server e può avvenire tramite programmi compilati o script interpretati  Nel caso di programmi compilati il web server si limita ad invocare, su richiesta del client, un eseguibile. L’eseguibile può essere scritto in un qualsiasi linguaggio che supporti l’interazione con il web server – tipicamente Java, Visual Basic, C++.  Storicamente il primo approccio è stato il Common Gateway Interface (CGI)

Tecnologia Server Side – programmi compilati La computazione server side con programmi compilati ha il vantaggio di un tempo di esecuzione molto veloce rispetto agli script, ma lo svantaggio di mandare in esecuzione una istanza del processo per ogni chiamata e quindi caricare molto il server in caso di molti accessi simultanei. Alcuni approcci tentano di rimediare a questo svantaggio – Servlet e ASP.NET – mandando in esecuzione una sola istanza di processo che gestisce chiamate multiple

Tecnologia Server Side - script Nel caso di esecuzione di script, il web server ha al suo interno un motore in grado di interpretare il linguaggio di script usato. Si perde in velocità di esecuzione, ma si guadagna in facilità d’uso In alcuni approcci rimane il problema dell’esecuzione simultanea di più processi (Perl), in altri viene eseguito un solo processo che gestisce tutte le chiamate (Cold Fusion, ASP) E’ possibile gestire più tecnologie serverside da uno stesso server web

Common Gateway Interface I programmi CGI sono scritti in un linguaggio di programmazione e generalmente compilati in codice eseguibile sulla piattaforma del server (o interpretati da un interprete che risiede sul server) Il programma CGI genera come output una pagina HTML (dinamica) CGI

Esempio CGI (Perl) #!usr/local/bin/perl local(%in) ; local($name, $value) ; # Resolve and unencode name/value pairs into %in foreach (split('&', $ENV{'QUERY_STRING'})) { s/\+/ /g ; ($name, $value)= split('=', $_, 2) ; $name=~ s/%(..)/chr(hex($1))/ge ; $value=~ s/%(..)/chr(hex($1))/ge ; $in{$name}.= "\0" if defined($in{$name}) ; # concatenate multiple vars $in{$name}.= $value ; } print "Content-type: text/html\n\n"; print $in{$name} ; print ", questa e' la tua pagina di Hello World";

Linguaggi di Scripting Per superare i limiti dei CGI (inefficienza, complessità di programmazione) è nata la tecnologia dei linguaggi di scripting integrati con il server web. Tra questi approcci ricordiamo Active Server Pages (ASP), Java Server Pages (JSP), PHP, Cold Fusion In questo corso ci concentreremo su ASP. Da notare che i principi di funzionamento di ASP sono gli stessi che ritroviamo in altri linguaggi di scripting come PHP o JSP.

Linguaggi di scripting Server web Individua lo script Analizza lo script Parser del linguaggio Genera la pagina HTML Browser web Richiede uno script Fornisce la pagina HTML

Esempi di approcci Server Side Tipico esempio di applicazione web con interazione con l’utente sono le FORM HTML. Vediamo un esempio di form e come viene implementato usando ASP. Si realizza una comunicazione tra la pagina contente la form e componente lato server che gestisce il contenuto della form spedito dall’utente. Questa componente e’ diversa a seconda della tecnologia usata Parametri …..

Esempio FORM - ASP ASP Il nome è: Il radio button selezionato è: In questo caso il “programma” indicato dalla action è una pagina ASP (ed es. miapagina.asp)

Tecnologie Client Side La computazione lato client può avvenire con programmi scaricati sul browser (applet, plug-in) oppure tramite script (Javascript, VBscript) Gli Applet sono programmi scritti in Java che vengono scaricati dal server al browser ed eseguiti sulla macchina client. Hanno delle limitazioni di funzionamento dovute a problemi di sicurezza. E’ possibile comunque accedere a dati che risiedono sul server (database) Gli script lato client sono generalmente usati per validare dati di input dell’utente e sono supportati dal browser (Javascript/VBScript) Recentemente si sta diffondendo AJAX, un mix di tecnologie clientside per implementare una connessione asincrona tra client e server (google maps, gmail)

Application server Web server Motore dinamico lato server Componenti aggiuntive Data base PHP ASP JSP... Apache IIS... MySQL Access SQL Server... Ambiente per costruire applicazioni web

Application Server AS commerciali (proprietari) Cold Fusion di Adobe. ASP. NET di Microsoft. AS open source PHP (P Hypertext Preprocessor), ideato da Rasmus Lerdorf. ZOPE (Z Object Publishing Environment), ideato da Jim Fulton. TOMCAT, è un servlet container per applicazioni JSP. (Esistono anche server J2EE proprietari come IBM WebSphere)

Sviluppo di applicazioni WEB La maggior parte dei siti web di oggi sono Applicazioni web, ovvero abbinano alla parte statica del protocollo HTTP una componente di programmazione e, tipicamente, una base di dati. La componente di programmazione può essere delegata al server e/o al client (tecnologia server-side vs client-side). Server side permette applicazioni più complesse e la connessione ad un database.

Tecnologie di script I linguaggi di script utilizzano un programma chiamato interprete per tradurre il codice in formato eseguibile. Gli script possono essere eseguiti su un server (server- side script) o nel browser situato nel computer client(client- side script). Quando un browser Web identifica uno script lato client, lo trasferisce al motore di script, che lo esegue nel momento in cui la pagina viene caricata. Fra i linguaggi di script lato client ricordiamo il Javascript e il Vbscript. Gli script lato server possono essere utilizzati per aggiungere interattività a una pagina Web e per consentire alla pagina o alla applicazione Web di interagire con altri programmi sul server. Per questi il motore di script esegue gli script sul server.

Introduzione ad ASP Il successo ottenuto dal client-side scripting ha portato in breve tempo allo sviluppo di linguaggi di scripting anche per il lato server, iniziando prima con ambienti specializzati, come ad esempio Borland IntraBuilder dove è Javascript il linguaggio sever-side utilizzato e poi orientandosi verso linguaggi di scripting integrati nel server Web, come ad esempio in Netscape Enterprise Server. Cavalcando questa tendenza, la Microsoft, rilasciando la versione 3.0 di Internet Information Server (IIS), ha introdotto sul mercato degli scripting server-side, la tecnologia Active Server Pages (ASP), con l’idea di sfruttare non solo le potenzialità degli strumenti server dedicati alla connettività, ma anche attraverso la tecnologia COM (Common Object Model), sfruttare tutte le risorse che il server Microsoft ha a disposizione e coinvolgendo anche i linguaggi di scripting come Jscript e Vbscript.

A cosa serve e come funziona Le pagine ASP sono completamente integrate con i file HTML, sono facili da creare e non necessitano di compilazione, sono orientate agli oggetti e usano componenti server ActiveX. Possiamo affermare che ASP, è lo strumento che riesce a far convogliare tutte le risorse disponibile sul server, per realizzare un sito Web (che nell’ottica ASP coincide con una applicazione) che possa sfruttare diverse tecnologie in modo trasparente. Le pagine di un sito non sono più una semplice collezione di documenti HTML ma un insieme di pagine contenenti codice script interpretabile dal server Web, il quale effettua le elaborazioni specificate prima di inviare la pagina HTML risultante al browser che l’ha richiesta. E’ da sottolineare che il risultato della elaborazione del motore ASP, è una pagina HTML standard che offre di conseguenza il vantaggio, di essere indipendente dal tipo di browser utilizzato.

ASP e i suoi utilizzi La tecnologia ASP basandosi sul modello COM (Component Object Model), è in grado di interagire con le applicazioni che seguono questo standard e riportare i risultati di questa interazione sotto forma di pagine Web. Inoltre il principio di interazione con applicazioni COM consente alle pagine ASP, di colloquiare con sistemi di posta elettronica (ad esempio Exchange o SMTP server) oppure interagire con applicazioni Microsoft come MTS (Microsoft Transaction Manager e Message Queue Server). Infine, attraverso la tecnologia ActiveX, è possibile estendere le funzionalità di ASP, progettando ex-novo, altri oggetti.

Corso Web Developer Lezione 2 – Fine