Programma
Architettura dei sistemi di elaborazione
- Struttura generale di un calcolatore elettronico
- La macchina di Von Neumann
- Supporti di memorizzazione
Software di base per sistemi di elaborazione
- Il sistema operativo
- Strumenti per la programmazione: editor, debugger, compilatori e interpreti
- Fasi di sviluppo di un programma
Elementi di programmazione
- Metodi per l'analisi di un problema
- Algoritmi
- Metodologie di programmazione strutturata e modulare
- Iterazione e ricorsione
Linguaggi di programmazione
- I linguaggi di programmazione e cenni alla loro evoluzione
- Sintassi e semantica
Il linguaggio Java
- Introduzione alla programmazione ad oggetti
- Il paradigma ad oggetti
- Fondamenti del linguaggio Java
- Alcuni algoritmi e strutture dati in Java
- Ereditarietà
- Strutture dati avanzate in Java
Complessità computazionale
- Tipi di complessità computazionale
- Modelli di costo
- Complessità in passi base
- Complessità asintotica
Basi di dati relazionali
- Cenni sul modello relazionale
Obiettivi
Conoscenze di base e operative della struttura dell'elaboratore e dei principi della programmazione orientata agli oggetti. Analisi della complessità computazionale. Elementi di basi di dati relazionali.
Orario delle Lezioni
- Mercoledì, 11-13, Aula 2.7B
- Venerdì, 9-12, Aula 2.7B
Orario delle Esercitazioni
- Nuovo orario: Mercoledì, 9-11, LAB3