Il principale obiettivo del corso è quello di consentire allo studente di poter sviluppare applicazioni Web, secondo il paradigma del WEB 2.0, ovvero con uno spiccato livello di interazione sito-utente.
Durante il corso verranno presentati alcune tra le più comuni tecnologie utilizzate lato client e lato server, nonché utili alla fruizione e realizzazione di servizi web. Infine, verranno fatti cenni all'utilizzo delle tecnologie web per la realizzazione di applicazioni mobile multipiattaforma.
Prerequisiti
Conoscenze di programmazione procedurale e ad oggetti. Nozioni di reti e di basi di dati.
Metodi Didattici
Lezioni ed esercitazioni.
Verifica Apprendimento
La verifica dell’apprendimento consisterà in un esame orale che verterà sugli argomenti del corso e da un progetto, secondo le seguenti modalità. Requisiti del progetto. Il progetto può essere proposto da un singolo studente o da un gruppo composto da massimo due studenti e verrà discusso nelle date stabilite dal calendario degli esami, insieme agli argomenti oggetto del corso. Il progetto si deve attenere ai seguenti requisiti: 1) Realizzare una applicazione web o un’applicazione mobile (con Cordova), attraverso l’utilizzo dei seguenti linguaggi: Lato client HTML CSS JavaScript Lato server Php 2) L’applicazione dovrà utilizzare MySQL per la gestione dei dati. 3) Occorre realizzare un servizio web, scegliendo alternativamente tra due tipologie: a. RESTful b. SOAP/WSDL 4) Il progetto deve essere corredato da una relazione che descriva tutte le sue componenti (interfaccia, script, database, servizio web o altro) 5) Il codice prodotto deve essere commentato
L'uso eventuale di altre tecnologie deve essere concordato con il docente. Il progetto deve essere consegnato almeno una settimana prima della data d'esame e va caricato sull'apposita sezione della pagina e-learning del corso sulla piattaforma moodle2.unime.it.
Criteri di valutazione.
La qualità del progetto verrà valutata secondo i seguenti criteri: 1. Appropriatezza delle soluzioni proposte e delle tecnologie utilizzate rispetto all’oggetto dell’applicazione 2. Completezza rispetto all’oggetto dell’applicazione 3. Qualità della relazione e della documentazione del codice 4. Originalità dell’applicazione 5. Usabilità dell’applicazione
1. Storia e architettura del WWW 2. Interfacce per il Web 3. Programmazione lato client e lato server 4. Servizi Web 5. CMS 6. Cenni su sviluppo mobile