WEB AND SOFTWARE ARCHITECTURE

Obiettivi formativi

Obiettivi generali: Lo scopo del corso è lo studio del linguaggio java lato server, per la realizzazione di applicazioni web. Il corso fornisce inoltre un’analisi critica di diverse soluzioni implementative di molte funzionalità applicative comuni nello sviluppo di applicazioni web. Obiettivi specifici: Programmazione lato server mediante Java Servlet e pagine JSP. Conoscenza e comprensione: Il corso permetterà la comprensione del supporto fornito dal linguaggio Java alla realizzazione di applicazioni web. In particolare lo studente studierà le motivazioni alla base di tutte le scelte implementative, in particolare facendo riferimento alle architetture client-server e ai protocolli di rete in uso. Applicare conoscenza e comprensione: Attraverso il corso lo studente imparerà a riconoscere tra le possibili soluzioni applicative ad un problema, quale offra i maggiori vantaggi in termini di prestazioni, sicurezza, portabilità e efficienza. Capacità critiche e di giudizio: Il corso metterà lo studente in condizione di saper scegliere, dato un problema, la migliore metodologia risolutiva, attraverso la profonda comprensione dei requisiti e dei vincoli imposti dall'architettura. Capacità comunicative: Lo studente sarà in grado di motivare le proprie scelte nella proposta di uno specifico approccio realizzativo di un’applicazione Web, e fornire una analisi comparativa dell’approccio scelto con altri approcci possibili. Capacità di apprendimento: Lo studente svilupperà capacità di studio autonome e di comprensione e valutazione critica di nuove metodologie, tecnologie e modelli di sviluppo di applicazioni Web.

Canale 1
EMANUELE PANIZZI Scheda docente

Programmi - Frequenza - Esami

Programma
Il corso è organizzato in quattro parti, oltre l'introduzione: 0. Introduzione: web apps, REST, git 1. API: json, OpenAPI 2. BACKEND: go language 3. FRONTEND: javascript, Vue.js 4. CONTAINERS: docker, kubernetes
Prerequisiti
Conoscenze di base di informatica apprese nei primi due anni di corso. In particolare: - almeno un linguaggio di programmazione - reti di calcolatori - basi di dati
Testi di riferimento
- Slides available on the WASA website for each lesson - example code - Documentation for all the topics is available on the web and will be pointed out during the course.
Frequenza
La frequenza del corso non è obbligatoria ma è fortemente consigliata.
Modalità di esame
* L'esame consiste nella realizzazione di un progetto suddiviso in 4 parti che verranno valutate in trentesimi e in un esame orale. Ogni parte è basata sullo sviluppo di codice. Sarà possibile migliorare il voto ricevuto in ciascuna parte poiché valuterò periodicamente le nuove consegne. Ovviamente, il voto potrà anche scendere, perché non posso tener conto del voto precedente in una valutazione successiva. Si potrà accedere all'orale solamente avendo superato tutte e quattro le parti, e il voto di presentazione all'orale sarà dato dalla media delle valutazione delle quattro parti. L'orale consisterà in una discussione dell'intero lavoro.
Modalità di erogazione
Lezioni ed esercitazioni.
  • Codice insegnamento10595534
  • Anno accademico2024/2025
  • CorsoApplied Computer Science and Artificial Intelligence – Informatica Applicata e Intelligenza Artificiale
  • CurriculumCurriculum unico
  • Anno3º anno
  • Semestre1º semestre
  • SSDINF/01
  • CFU6
  • Ambito disciplinareDiscipline Informatiche