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.

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.

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.