La revisione risulta necessaria per via dei grandi cambiamenti verificatisi nel corso degli ultimi anni dovuti, fra le tante cose, all'evoluzone del mondo
informatico e alle modifiche all'Esame di Stato introdotti dal MIUR. Più specificamente si è provveduto a:
* Aggiornare i riferimenti
* Estendere la trattazione di reti e protocolli Peer-to-peer e dei sistemi distribuiti in generale
* Enunciare e dettagliare il problema CORS
* Approfondire il framework Django e il CMS Wordpress
* Riorganizzare la sezione dello sviluppo informatico, presentando due modelli di sviluppo (tradizionale e agile) riprendendo materiale anticipato nel corso del terzo anno;
* Guida al nuovo esame di stato, con una soluzione commentata passo per passo della prova ordinaria del giugno 2019
* Ampliamento della sezione sull'UML.
---------------
Giunti al vostro ultimo anno di corso, avete già acquisito tantissime competenze e conoscenze nel ramo informatico che potrete applicare nel mondo del lavoro (e potrete dimostrarlo già quest'anno con gli stage, se non lo avete già fatto) oppure espandere e approfondire nel caso decidiate di proseguire gli studi nel ramo.
Ma allora, cosa ci resta da fare? Per la verità, ancora parecchio. Infatti, il mondo informatico è in continua e tumultuosa evoluzione, che ci offre prodotti e servizi sempre nuovi, ma al prezzo di una complessità sempre crescente.
Pensiamo ad una applicazione di uso comune come Gmail (o sistema equivalente di Webmail): è composto da due software principali (browser e server) ciascuno composto di molte componenti specializzate (interfaccia utente, comunicazione, ...); ad esso aggiungiamo l'infrastruttura di rete per la connessione, un sistema di archiviazione dati (su cloud), gestione della sicurezze e tanto tanto ancora. Solo pochi anni fa, un programma equivalente (simile a questo) avrebbe richiesto non più di qualche centinaio di righe di codice e sarebbe stato realizzabile da una sola persona... oggi, questo non è possibile.
Il che ci porta al tema centrale di quest'anno: l'integrazione e la complessità.
Gran parte degli argomenti che vedrete, infatti, riguarderà l'integrazione di elementi che già conoscete – anche studiati in materie diverse – in modo nuovo e originale, ma al prezzo di una aumentata complessità dei sistemi; cercheremo quindi di limitare tale complessità, in ambito operativo, sistemico e di sviluppo, utilizzando strumenti e tecniche innovative.
Più dettagliatamente parleremo di: completare le vostre conoscenze in ambito web gestendo un server web; espandere la programmazione web tramite la programmazione server-side; semplificare lo sviluppo di applicazioni web utilizzando i CMS e i framework di sviluppo;
rivoluzionare le metodologia di sviluppo software con l'approccio agile.
Al contrario degli anni precenti, in cui avete affrontato temi piuttosto impegnativi anche dal punto di vista teorico, gli argomenti dell'ultimo anno si concentrano sugli aspetti applicativi e pratici; troverete quindi meno spiegazioni, disegni e screencast, ed in compenso avrete invece ampie possibilità di mettere le “mani in pasta” e applicare le novità in laboratorio - idealmente potreste utilizzarne alcune nel progetto finale da presentare all'Esame di Stato.
Marcello Missiroli è un “matematico pentito”, convertitosi all'Informatica. Insegna da molti anni Informatica, Sistemi e Reti e Tecnologia Informatica (TEPSIT) nel triennio degli Istituti tecnici di Modena e provincia. Nel suo tentativo di mantenersi aggiornato utilizza varie tecnologie di supporto, come gli strumenti di e-learning, i social network, tecniche di gamification e flipped learning.