Dettaglio insegnamento

METODOLOGIE DI PROGRAMMAZIONE PER IL WEB

MF0437

Insegnamento
METODOLOGIE DI PROGRAMMAZIONE PER IL WEB
Codice
MF0437
Anno Accademico
2023/2024
Anno regolamento
2022/2023
Corso di studio
INFORMATICA
Curriculum
000 - CORSO GENERICO
Responsabile didattico
CFU
6
Ore di lezione
48
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB - Obbligatoria
Anno
2
Periodo
Secondo Semestre
Sede
ALESSANDRIA
Lingua insegnamento
Italiano
Contenuti
Durante il corso saranno illustrati i concetti di base sull'utilizzo di markup languages come HTML5 e CSS3, i concetti più importanti relativi alla programmazione Web lato client (JavaScript) e lato server (Node.js), nonché le modalità di interazione con DBMS relazionali (RDBMS). Verrà inoltre posta attenzione agli aspetti di accessibilità di siti e applicazioni web.
Testi di riferimento
Deitel et al., Internet and World Wide Web: How to program (5th ed.), Prentice Hall

R. Connolly, R. Hoar, Fundamentals of Web Development, Pearson

R. Sebesta, Programming the World Wide Web, Pearson

Materiale fornito dal docente.
Obiettivi formativi
Scopo del corso è acquisire le capacità di base per progettare e realizzare siti ed applicazioni sul World Wide Web, costituiti da testi, elementi multimediali e interattivi secondo un'architettura 3-tier (client/application/data).
Prerequisiti
Programmazione ad oggetti. Basi di Dati.
Metodi didattici
Lezioni che introducono i concetti teorici ed esercitazioni in laboratorio che li applicano.

Nelle lezioni si affrontano gli argomenti di teoria tramite presentazioni diapositive, con esempi e alcune domande per verificare l’apprendimento degli studenti.

Nelle esercitazioni in laboratorio gli studenti sono guidati nella realizzazione di semplici progetti volti a mettere in pratica le conoscenze teoriche acquisite.
Altre informazioni
Monitoraggio del processo di apprendimento: durante l’insegnamento gli studenti interagiranno con il docente per la soluzione di esercizi e di compiti di laboratorio
Modalità di verifica dell'apprendimento
L'esame consisterà nella progettazione, realizzazione e discussione di un progetto pratico assegnato durante il corso. Il progetto deve essere consegnato tre giorni prima dell’appello e quindi discusso in sede di esame orale. Il voto sarà espresso in trentesimi e rappresenterà la sintesi di una valutazione sulla completezza e correttezza del progetto rispetto alle specifiche date e la capacità di discutere con precisione e consapevolezza delle soluzioni tecniche e metodologiche adottate in fase di esame orale.
Programma esteso
Concetti base di programmazione e progettazione per il web
Il linguaggio HTML (HTML5)
Cascading Style Sheets (CSS3) e il responsive design
Accessibilità di pagine e applicazioni web
Programmazione client-side: JavaScript, DOM, AJAX
Richiami di progettazione RDBMS
Programmazione server-side: web server e architettura 3-tier, node.js e il framework Express
Interfacciamento con RDBMS
Cenni sui web service e sulle API
Strumenti di sviluppo, dentro e fuori dal browser
Risultati di apprendimento attesi
Conoscenza e comprensione: familiarità con i principi alla base della realizzazione di siti ed applicazioni web di media complessità, usabili e accessibili, costituiti da testi, elementi multimediali e interattivi secondo un'architettura 3-tier (client/application/data).

Capacità di applicare conoscenza e comprensione: abilità di progettare e realizzare un progetto usando i su citati strumenti e metodologie della programmazione Web basata su un'architettura 3-tier.

Capacità critiche e di giudizio: abilità di riconoscere 1) buone e cattive pratiche di programmazione web, 2) quando è più o meno appropriato adottare una soluzione a livello client, a livello applicazione o a livello dei dati e 3) valutare la qualità architetturale di un progetto.

Capacità di comunicare quanto si è appreso: padronanza della terminologia specifica della programmazione Web e miglioramento nell’abilità di lavoro in gruppo.

Capacità di proseguire lo studio in modo autonomo: maggior facilità ad apprendere autonomamente l’utilizzo di altri linguaggi e tecnologie specifiche per lo sviluppo per il web, oltre ad altri paradigmi di progettazione architetturale.
Ultimo aggiornamento:09-09-2026 00:14:31