Laboratorio di programmazione - Computer Science - Università ...
Laboratorio di programmazione - Computer Science - Università ...
Laboratorio di programmazione - Computer Science - Università ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
elativo linguaggio−macchina.<br />
Un linguaggio imperativo minimale:tipo <strong>di</strong> dato intero, variabili, espressioni, assegnamento,<br />
con<strong>di</strong>zionale, iterazione.<br />
Correttezza e Terminazione:correttezza rispetto alle specifiche,questione della<br />
terminazione,definizioni <strong>di</strong> correttezza parziale e totale,tecniche elementari per le verifiche <strong>di</strong><br />
correttezza.<br />
• Strutture Dati.<br />
Introduzione ai tipi <strong>di</strong> dati:nozione <strong>di</strong> tipo e sue caratteristiche fondamentali: nome, insieme degli<br />
elementi e operazioni consentite;tipi semplici: integer, real, boolean, char.Tipi <strong>di</strong> dati astratti<br />
(ADT):introduzione.array e record, files; stringhe.Strutture dati ricorsive<br />
• Programmi e sottoprogrammi.<br />
•<br />
•<br />
Funzioni (e procedure); passaggio dei parametri.<br />
Programmazione ricorsiva<br />
Parte II. Complementi <strong>di</strong> Programmazione<br />
• Introduzione alla semantica.<br />
• Introduzione alla Programmazione Object Oriented.<br />
• Introduzione alla Programmazione Funzionale<br />
Esame scritto e colloquio orale.<br />
Programmazione avanzata e <strong>di</strong> rete<br />
Docente Giuseppe Scollo − supplente<br />
Cre<strong>di</strong>ti 5<br />
Periodo 3º quadrimestre<br />
Obiettivi formativi<br />
Il corso mira a dotare gli allievi <strong>di</strong> solide basi tecniche e metodologiche per lo sviluppo del software nei<br />
moderni ambienti <strong>di</strong>stribuiti. Un ambiente <strong>di</strong>stribuito è un sistema <strong>di</strong> componenti autonomi, connessi da una<br />
rete <strong>di</strong> risorse <strong>di</strong> comunicazione e utilizzanti servizi <strong>di</strong> coor<strong>di</strong>namento delle attività e <strong>di</strong> con<strong>di</strong>visione delle<br />
risorse, tale da essere percepito dai suoi utenti quale sistema integrato <strong>di</strong> servizi. Internet è l'esempio più ovvio<br />
<strong>di</strong> ambiente <strong>di</strong>stribuito.<br />
L'approfon<strong>di</strong>mento del para<strong>di</strong>gma <strong>di</strong> <strong>programmazione</strong> ad oggetti con i concetti ed i costrutti per la<br />
concorrenza e la cooperazione in architetture software <strong>di</strong> oggetti <strong>di</strong>stribuiti costituisce il primo obiettivo del<br />
corso, sul quale si innestano i successivi. Questi sono prevalentemente orientati allo sviluppo <strong>di</strong> applicazioni<br />
in ambienti <strong>di</strong>stribuiti. Non si trascurano tuttavia gli aspetti più salienti della <strong>programmazione</strong> <strong>di</strong> sistema<br />
(comunicazione, sicurezza, controllo e gestione), al fine <strong>di</strong> sviluppare il bagaglio tecnico necessario alla<br />
comprensione <strong>di</strong> fenomeni chiave che si manifestano negli ambienti <strong>di</strong>stribuiti.<br />
Il programma del corso presuppone una <strong>di</strong>screta familiarità con la <strong>programmazione</strong> ad oggetti in Java e/o<br />
C++.