Servizi per la didattica
PORTALE DELLA DIDATTICA

Introduction to Web Applications

01DXUOA, 01DXUJM, 01DXULH, 01DXULI, 01DXULM, 01DXULN, 01DXULP, 01DXULS, 01DXULU, 01DXULX, 01DXULZ, 01DXUMA, 01DXUMC, 01DXUMH, 01DXUMK, 01DXUMN, 01DXUMO, 01DXUMQ, 01DXUNX, 01DXUOD, 01DXUPC, 01DXUPI, 01DXUPL, 01DXUPM, 01DXUPW

A.A. 2022/23

Course Language

Italian

Course degree

1st degree and Bachelor-level of the Bologna process in Ingegneria Informatica - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Meccanica (Mechanical Engineering) - Torino
1st degree and Bachelor-level of the Bologna process in Design E Comunicazione - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Dell'Autoveicolo (Automotive Engineering) - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Informatica (Computer Engineering) - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Dell'Autoveicolo - Torino
1st degree and Bachelor-level of the Bologna process in Electronic And Communications Engineering (Ingegneria Elettronica E Delle Comunicazioni) - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Dei Materiali - Torino
1st degree and Bachelor-level of the Bologna process in Architettura (Architecture) - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Elettrica - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Aerospaziale - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Biomedica - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Civile - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Edile - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Energetica - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Meccanica - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Per L'Ambiente E Il Territorio - Torino
1st degree and Bachelor-level of the Bologna process in Matematica Per L'Ingegneria - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Elettronica - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Fisica - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Del Cinema E Dei Mezzi Di Comunicazione - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Gestionale - Torino
1st degree and Bachelor-level of the Bologna process in Ingegneria Gestionale - Torino
1st degree and Bachelor-level of the Bologna process in Architettura - Torino
1st degree and Bachelor-level of the Bologna process in Pianificazione Territoriale, Urbanistica E Paesaggistico-Ambientale - Torino

Course structure
Teaching Hours
Lezioni 20
Esercitazioni in aula 20
Esercitazioni in laboratorio 20
Teachers
Teacher Status SSD h.Les h.Ex h.Lab h.Tut Years teaching
De Russis Luigi   Professore Associato ING-INF/05 20 20 0 0 1
Teaching assistant
Espandi

Context
SSD CFU Activities Area context
ING-INF/05 6 D - A scelta dello studente A scelta dello studente
2022/23
Il corso si pone l'obiettivo di introdurre i concetti, le metodologie e le tecnologie necessarie per progettare e realizzare applicazioni web costituite da elementi testuali, multimediali e interattivi. Verranno illustrati i concetti di base di linguaggi come HTML5 e CSS3, gli aspetti fondamentali relativi alla programmazione di applicazioni web, comprensiva delle tecnologie lato client (JavaScript) e lato server (con Python), nonché le modalità di interazione con database relazionali. Particolare attenzione verrà posta agli aspetti di accessibilità e progettazione dell'architettura dell'informazione. La presentazione degli argomenti permetterà agli studenti di ottenere le competenze base per gestire le principali tecnologie per il web ed effettuare scelte di progettazione ragionate per costruire applicazioni web efficaci.
The course aims at introducing the concepts, the methodologies, and the technologies needed to design and implement web applications made of textual, multimedia, and interactive elements. Students will study the basic concepts of languages like HTML5 and CCS3, the fundamental aspects of the web programming with client-side (JavaScript) and server-side (with Python) technologies, and the modalities of interacting with a relational database. Particular focus will be on the accessibility aspects and the information architecture design. The topic presentation will enable students to gain the essential skills to manage the main web technologies and make reasoned design choices to create useful web applications.
Al termine del corso, gli studenti e le studentesse saranno in grado di: - Conoscere i concetti fondamentali relativi alle architetture web, ai suoi protocolli e linguaggi principali. - Possedere e utilizzare le conoscenze base di un framework in Python per creare applicazioni web. - Conoscere e usare le principali tecnologie per il web (HTML, CSS, JavaScript) e saperle applicare a scenari reali. - Creare un'applicazione web completa, di media complessità, usabile e accessibile.
Al termine del corso, gli studenti e le studentesse saranno in grado di: - Conoscere i concetti fondamentali relativi alle architetture web, ai suoi protocolli e linguaggi. - Possedere e utilizzare le conoscenze base di un framework in Python per creare applicazioni web. - Conoscere e usare le principali tecnologie per il web (HTML, CSS, JavaScript) e saperle applicare a scenari reali. - Creare un'applicazione web completa, di media complessità, usabile e accessibile.
- Programmazione Python (al livello fornito dall'insegnamento di Informatica del primo anno comune di Ingegneria). - Linguaggio SQL per l'interrogazione di una base di dati (attraverso l'insegnamento di Basi di Dati o formazione personale).
- Programmazione Python (al livello fornito dall'insegnamento di Informatica del primo anno comune di Ingegneria). - Linguaggio SQL per l'interrogazione di una base di dati (attraverso l'insegnamento di Basi di Dati o formazione personale).
Il corso tratterà i seguenti argomenti: a) Progettare per il web: architetture e concetti fondamentali (1 credito) - Architettura delle applicazioni web e cenni sul protocollo HTTP - Concetti base di progettazione per il web - Strumenti di sviluppo e debug, dentro e fuori dal browser - Accessibilità e architettura dell'informazione di applicazioni web b) Programmazione front-end (3 crediti) - Il linguaggio HTML5: aspetti base e avanzati - Cascading Style Sheets (CSS3) e design responsive - JavaScript e DOM c) Programmazione back-end (2 crediti) - Server web e sviluppo in ambiente Python - Accesso a basi dati relazionali con Python - Interazione col front-end
Concetti base di progettazione per il web. Architettura delle applicazioni web e cenni sul protocollo HTTP. Il linguaggio HTML5. Cascading Style Sheets (CSS3) e design responsive. Accessibilità e architettura dell'informazione di applicazioni web. Programmazione client-side: JavaScript e DOM. Programmazione server-side: server web e sviluppo in ambiente Python. Accesso a basi dati relazionali con Python. Strumenti di sviluppo, dentro e fuori dal browser.
In aggiunta alle ore in aula, che includeranno sia lezioni interattive che esercizi (4 crediti), il corso prevede delle ore di laboratorio (2 crediti). I laboratori consisteranno nell'applicazione delle tecniche e dei concetti presentati in aula per costruire incrementalmente un'applicazione web di complessità crescente. Durante i laboratori, gli studenti potranno discutere con i docenti le proprie soluzioni agli esercizi a loro assegnati. Il corso adotterà soluzioni e strumenti moderni per la comunicazione e lo sviluppo di applicazioni web (per esempio, Git e GitHub, Telegram/Slack, ecc.). Le lezioni e gli esercizi in aula saranno video-registrati e messi a disposizione dopo ogni classe.
In aggiunta alle ore in aula, che includeranno sia lezioni interattive che esercizi (4 crediti), il corso prevede delle ore di laboratorio (2 crediti). I laboratori consisteranno nell'applicazione delle tecniche e dei concetti presentati in aula per costruire incrementalmente un'applicazione web di complessità crescente. Durante i laboratori, gli studenti potranno discutere con i docenti delle proprie soluzioni agli esercizi a loro assegnati. Il corso adotterà soluzioni e strumenti contemporanei per la comunicazione e lo sviluppo di applicazioni web (per esempio, Git e GitHub, Slack/Discord, ecc.).
Slide e materiale relativo (link, letture, ecc.) saranno forniti dai docenti durante il corso. Ulteriori risorse consigliate: * Flavio Copes, Handbook su HTML, CSS, e JavaScript, disponibili online: https://thevalleyofcode.com * MDN Web Docs, disponibile online: https://developer.mozilla.org * Miguel Grinberg, "Flask Web Development", seconda edizione, O'Reilly Media Inc., 2018, ISBN 9781491991732
Slide e materiale relativo (link, letture, ecc.) saranno forniti dai docenti durante il corso.
Modalità di esame: Prova orale obbligatoria; Elaborato progettuale individuale;
Exam: Compulsory oral exam; Individual project;
L'esame consisterà nella verifica delle competenze teoriche e pratiche descritte in precedenza attraverso un progetto pratico, da implementare individualmente, seguito da una discussione orale sul progetto stesso. La consegna del progetto avverrà tramite strumenti online, mentre la prova orale sarà svolta in laboratorio o in aula. Il progetto prevederà la creazione e la consegna di un'applicazione web che utilizzi le competenze e le conoscenze acquisite durante il corso, secondo delle specifiche che saranno pubblicate alcune settimane in anticipo rispetto alla data dell'appello. Solo gli studenti che consegneranno il loro progetto prima della scadenza fissata per ogni appello potranno accedere all'orale. L'applicazione web sarà valutata dai docenti durante la prova orale, verificando le funzionalità implementate e le tecniche di programmazione adottate rispetto alle specifiche progettuali ricevute. Tale prova orale servirà anche a valutare la conoscenza approfondita del codice consegnato dagli studenti e alla loro capacità di discutere le scelte progettuali effettuate alla luce degli argomenti del corso. Tale discussione avrà una durata prevista di 20-30 minuti per progetto.
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Compulsory oral exam; Individual project;
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.
Esporta Word


© Politecnico di Torino
Corso Duca degli Abruzzi, 24 - 10129 Torino, ITALY
Contatti