This blog contains information about the course on web systems design and architecture (Architetture e Progetto dei Sistemi Web, 6 CFU) taught by Marco La Cascia at Università degli Studi di Palermo for computer engineering students. The goal of the course is to introduce and study key concepts related to web application design and programming.
martedì 10 gennaio 2017
mercoledì 14 dicembre 2016
mercoledì 13 luglio 2016
Data orali III appello luglio
Si comunica che gli orali, o la verbalizzazione per chi ha già superato l'esame in precedenza, saranno lunedì 18 luglio alle 11:00 al DICGIM (Ed.6 III piano).
mercoledì 15 giugno 2016
Data orali I appello giugno
Si comunica che gli orali, o la verbalizzazione per chi ha già superato l'esame in precedenza, saranno lunedì 20 alle 9:00 al DICGIM (Ed.6 III piano).
martedì 26 aprile 2016
Esami orali appello di Aprile
Si comunica che gli esami orali dell'appello di Aprile saranno venerdì 29 alle ore 9:00 nei locali del Dipartimento (III piano).
martedì 23 febbraio 2016
Esami orali terzo appello
Si comunica che gli esami orali del terzo appello saranno venerdì 26 febbraio alle ore 9:00 nei locali del Dipartimento (III piano).
lunedì 15 febbraio 2016
Spostamento data deploy terzo appello
Si comunica che il deploy dei progetti sarà martedì 23 alle 9:00 nel mio ufficio e non venerdì 19.
giovedì 11 febbraio 2016
Esami orali secondo appello
Si comunica che gli esami orali del secondo appello saranno lunedì 15 febbraio alle ore 9:00 nei locali del Dipartimento (III piano).
martedì 2 febbraio 2016
Spostamento data deploy secondo appello
Si comunica che il deploy dei progetti sarà lunedì 8 alle 9:00 nel mio ufficio e non venerdì 5.
lunedì 25 gennaio 2016
Esami orali primo appello
Si comunica che gli esami orali del primo appello saranno giovedì 28 gennaio alle ore 9:00 nei locali del Dipartimento (III piano).
venerdì 18 dicembre 2015
Christmas holidays and final lecture notice
This post is to confirm that the next (and last) lecture of the course will be held on friday Jan 8th from 9 to 12 in room A320.
We will recap server side programming, will see some basic JDBC programming and will define the platform for final projects deploy.
We will recap server side programming, will see some basic JDBC programming and will define the platform for final projects deploy.
Handouts on server side programming
Available handouts and sample code on server side programming:
Note on JSP translation to servlet
To understand the translation of JSP to servlet have a look to the files hello.jsp, shown in class, and the corresponding, automatically generated, servlet hello_jsp.java You can experience with your own JSP and look at the generated servlets.
Be aware that the automatically generated servlet are somewhat hidden. On my system they where in my Eclipse workspace directory and precisely in:
workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/work/Catalina/localhost/helloJEE/org/apache/jsp
You should find them in a similar place in your computer.
Note on JSP translation to servlet
To understand the translation of JSP to servlet have a look to the files hello.jsp, shown in class, and the corresponding, automatically generated, servlet hello_jsp.java You can experience with your own JSP and look at the generated servlets.
Be aware that the automatically generated servlet are somewhat hidden. On my system they where in my Eclipse workspace directory and precisely in:
workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/work/Catalina/localhost/helloJEE/org/apache/jsp
You should find them in a similar place in your computer.
giovedì 10 dicembre 2015
martedì 8 dicembre 2015
Tesine
Come anticipato qualche tempo fa, per aver assegnata una tesina, che può essere individuale o di gruppo, dovete inviarmi un documento di specifiche di poche pagine che riporta cosa volete fare, come volete farlo e quali tecnologie utilizzerete (fra quelle viste a lezione) e aspettare che io vi dia l'OK prima di considerare le specifiche accettate. Per scrivere le specifiche utilizzate come riferimento lo schema allegato.
Le specifiche che mi invierete devono essere congrue col numero di "sviluppatori" del team. Per tesine individuali è quindi sufficiente implementare le funzionalità di base, per tesine da fare in coppia (o al massimo in tre) dovrete inserire necessariamente delle funzionalità aggiuntive.
E' anche possibile proporre altri argomenti. Se avete in mente una nuova applicazione o volete sviluppare una web-application a supporto di tesine di altri insegnamenti contattatemi che ne parliamo.
Di seguito alcuni possibili temi da sviluppare, altri seguiranno nei prossimi giorni.
Gestore di note
Si tratta di realizzare una versione semplificata di Google Keep che e’ il sistema di Google per gestire note (se non lo conoscete visitate keep.google.com).
Ovviamente non dovete replicare tutte le funzionalità ma almeno quelle di base (login, creazione nota, storing su server e visualizzazione delle note). Sulle eventuali funzionalità aggiuntive avete campo libero (immagini nelle note, interfaccia utente evoluta, condivisione fra utenti, cancellazione delle note, ricerca nelle note, impostazioni di visualizzazione, etc…).
Se lo ritenete utile potete usare XML e le tecnologie collegate per definire il formato delle note e per visualizzarle.
Gestore contatti
Si tratta di realizzare una versione semplificata di un sistema come Google contatti per la gestione dei contatti telefonici, email, social, etc..
Non dovete replicare tutte le funzionalità ma almeno quelle di base (login, creazione contatto, storing su server, eliminazione contatti e visualizzazione dei contatti). Sulle eventuali funzionalità aggiuntive avete campo libero (immagine del contatto, interfaccia utente evoluta, ricerca nei contatti, possibilità di avere un qualsiasi numero di campi per ciascun contatto, possibilità di importare i dati da un file Excel di cui si fa l'upload, esportazione dei dati in formato XML, etc…).
I dati vanno memorizzati su un DB relazionale. Il modello dei dati lo definirete voi ma potrà essere una semplice tabella (nel caso in cui per ciascun contatto si possono avere solo i campi predefiniti) o un modello più complesso che consenta maggiore flessibilità.
Virtual Pet
Single page web application che permette la gestione di un virtual pet. Per la memorizzazione potete usare i cookies. Per l’implementazione di eventuali funzionalità di tipo social dovreste scrivere qualche componente lato server che tenga in un DB traccia degli utenti registrati e delle relazioni.
Per la struttura di massima potete prendere spunto dall’esempio iRock del libro Head First JavaScript (http://examples.oreilly.com/9780596527747/), per nuove funzionalità da realizzare potete ispirarvi alla app Pou disponibile per Android e iOS.
Le specifiche che mi invierete devono essere congrue col numero di "sviluppatori" del team. Per tesine individuali è quindi sufficiente implementare le funzionalità di base, per tesine da fare in coppia (o al massimo in tre) dovrete inserire necessariamente delle funzionalità aggiuntive.
E' anche possibile proporre altri argomenti. Se avete in mente una nuova applicazione o volete sviluppare una web-application a supporto di tesine di altri insegnamenti contattatemi che ne parliamo.
Di seguito alcuni possibili temi da sviluppare, altri seguiranno nei prossimi giorni.
Gestore di note
Si tratta di realizzare una versione semplificata di Google Keep che e’ il sistema di Google per gestire note (se non lo conoscete visitate keep.google.com).
Ovviamente non dovete replicare tutte le funzionalità ma almeno quelle di base (login, creazione nota, storing su server e visualizzazione delle note). Sulle eventuali funzionalità aggiuntive avete campo libero (immagini nelle note, interfaccia utente evoluta, condivisione fra utenti, cancellazione delle note, ricerca nelle note, impostazioni di visualizzazione, etc…).
Se lo ritenete utile potete usare XML e le tecnologie collegate per definire il formato delle note e per visualizzarle.
Gestore contatti
Si tratta di realizzare una versione semplificata di un sistema come Google contatti per la gestione dei contatti telefonici, email, social, etc..
Non dovete replicare tutte le funzionalità ma almeno quelle di base (login, creazione contatto, storing su server, eliminazione contatti e visualizzazione dei contatti). Sulle eventuali funzionalità aggiuntive avete campo libero (immagine del contatto, interfaccia utente evoluta, ricerca nei contatti, possibilità di avere un qualsiasi numero di campi per ciascun contatto, possibilità di importare i dati da un file Excel di cui si fa l'upload, esportazione dei dati in formato XML, etc…).
I dati vanno memorizzati su un DB relazionale. Il modello dei dati lo definirete voi ma potrà essere una semplice tabella (nel caso in cui per ciascun contatto si possono avere solo i campi predefiniti) o un modello più complesso che consenta maggiore flessibilità.
Virtual Pet
Single page web application che permette la gestione di un virtual pet. Per la memorizzazione potete usare i cookies. Per l’implementazione di eventuali funzionalità di tipo social dovreste scrivere qualche componente lato server che tenga in un DB traccia degli utenti registrati e delle relazioni.
Per la struttura di massima potete prendere spunto dall’esempio iRock del libro Head First JavaScript (http://examples.oreilly.com/9780596527747/), per nuove funzionalità da realizzare potete ispirarvi alla app Pou disponibile per Android e iOS.
venerdì 4 dicembre 2015
lunedì 30 novembre 2015
domenica 29 novembre 2015
Handouts on DOM
Available handouts and sample code on HTML and XML DOM:
- HTML DOM handout
- HTML DOM sample code
- XML DOM handout
- XML DOM sample code
martedì 10 novembre 2015
Exercise on XML validation and transformation
Practice with XML features as required in exercise set 2.
lunedì 9 novembre 2015
Handouts on JavaScript
Available handouts and sample code on JavaScript:
- JavaScript (1)
- JavaScript (2)
- Basic JavaScript sample code
- More JavaScript sample code
Iscriviti a:
Post (Atom)