Fondamenti di Informatica C - R. Cassinis Fondamenti di Informatica C Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 Ancora su modale e non modale: Le caratteristiche proprie della programmazione modale e non modale si riflettono anche (e soprattutto) sul principale mezzo di interazione con l’utente: le finestre Nei programmi moderni le finestre sono sempre non modali… Ma esiste una classe particolare, molto diffusa, di finestre: i dialoghi (dialog) Lezione 22: Dialoghi, e prime nozioni sul web Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 2 16-11-2004 1 Fondamenti di Informatica C - R. Cassinis Un esempio di dialogo (non modale): Pulsante di chiusura Titolo Pulsante di default Pulsanti Check box Testo fisso Testo editabile Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 3 Un dialogo modale Manca il pulsante di chiusura! Tendina (choice) Scrolling field Lezione 22: Dialoghi, e prime nozioni sul web Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 4 16-11-2004 2 Fondamenti di Informatica C - R. Cassinis Un altro dialogo modale (alert): Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 5 Siamo finalmente pronti… Per affrontare il tema della programmazione grafica interattiva in Java Tutto quello che avete già imparato sul Java rimane valido, ma mentre prima scrivevate solo programmi “Plain vanilla”, adesso impareremo a costruire interfacce grafiche (interattive e animate) Lezione 22: Dialoghi, e prime nozioni sul web Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 6 16-11-2004 3 Fondamenti di Informatica C - R. Cassinis Il concetto fondamentale del web: Avete sentito mai parlare del paradigma client-server? Esistono server che forniscono a client file su richiesta Esistono diversi protocolli adatti a trasmettere diversi tipi di file I browser sono in grado di richiedere, di ricevere e di interpretare questi file, in particolare quelli HTML (HyperText Markup Language) Due aspetti importanti: Reperimento e trasmissione dei file Interpretazione dei file Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 7 URI: Uniform Resource Identifier ftp://ftp.is.co.za/rfc/rfc1808.txt -- ftp scheme for File Transfer Protocol services gopher://spinaltap.micro.umn.edu/00/Weather/California/Los%20Angeles -- gopher scheme for Gopher and Gopher+ Protocol services http://www.math.uio.no/faq/compression-faq/part1.html -- http scheme for Hypertext Transfer Protocol services mailto:[email protected] -- mailto scheme for electronic mail addresses news:comp.infosystems.www.servers.unix -- news scheme for USENET news groups and articles telnet://melvyl.ucop.edu/ -- telnet scheme for interactive services via the TELNET Protocol Lezione 22: Dialoghi, e prime nozioni sul web Lezione 22: Dialoghi, e prime nozioni sul web http://www.ietf.org/rfc/rfc2396.txt 16-11-2004 8 16-11-2004 4 Fondamenti di Informatica C - R. Cassinis URL: Uniform Resource Locator Formato generale: scheme-name:scheme-info mailto:[email protected] Per il trasferimento di file: scheme-name://host:port/ file-info#internal-reference http://www.ing.unibs.it:80/~cassinis/index.html http://www.pitcairn.pn/homepage.htm Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 9 A proposito di URL: Lo scheme-name può essere sottinteso (v. prossima slide) Il nome dell’host può essere espresso come: Nome simbolico (http://www.google.it) Dotted quad (http://64.233.171.104) Lo host può essere sottinteso Il port può essere sottinteso File-info può essere abbreviato e indica il path Le subdirectory si indicano con slash (/), non con backslash (\) Alcuni server fanno differenza fra maiuscole e minuscole, alcuni no: attenzione! <img src=”http://miosito.it/coffee.gif"> non sempre trova il file Coffee.gif Internal-reference in sostanza indica a che punto del file bisogna andare. Lezione 22: Dialoghi, e prime nozioni sul web Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 10 16-11-2004 5 Fondamenti di Informatica C - R. Cassinis URL: Semplificazioni <img src="coffee.gif"> <!-- Questo file sta sullo stesso server (anzi, nella stessa directory) --> <img src=/”../tazze/coffee.gif"> <!-- Questo file sta sullo stesso server ma in una diversa Tag directory) --> Commento Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 11 Il primo esempio di HTML: <html> <body> <b> Enjoy a cup of java! </b> <br> <img src="coffee.gif"> </body> </html> Proviamo? Lezione 22: Dialoghi, e prime nozioni sul web Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 12 16-11-2004 6 Fondamenti di Informatica C - R. Cassinis Come vanno le cose: Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 13 Quindi, fondamentalmente… HTML è un linguaggio di descrizione di pagine Che prescinde dal calcolatore su cui gira Che lascia all’utente una discreta libertà in campo grafico Che si incarica di risolvere molti problemi di impaginazione e grafica Che cerca di uniformare l’aspetto grafico prescindendo dalle differenze fra calcolatori Che forza il meno possibile le preferenze dell’utente Che permette di rendere “attivi” alcuni elementi, stabilendo dei collegamenti (link) Lezione 22: Dialoghi, e prime nozioni sul web Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 14 16-11-2004 7 Fondamenti di Informatica C - R. Cassinis Ma HTML non permette: Di creare un file sul client; Di definire variabili; Di implementare cicli; … Per queste cose ci vuole un linguaggio di programmazione vero, e Java va benissimo! Esempi: Lezione 22: Dialoghi, e prime nozioni sul web Lezione 22: Dialoghi, e prime nozioni sul web 16-11-2004 15 16-11-2004 8