28004 - FONDAMENTI DI INFORMATICA T-1 (A-K)

Scheda insegnamento

  • Docente Federico Chesani

  • Moduli Federico Chesani (Modulo 1)
    Marco Patella (Modulo 2)

  • Crediti formativi 9

  • Modalità didattica Convenzionale - Lezioni in presenza (Modulo 1)
    Convenzionale - Lezioni in presenza (Modulo 2)

  • Lingua di insegnamento Italiano

Anno Accademico 2019/2020

Programma/Contenuti

1. Architettura dei sistemi di elaborazione
Struttura generale di un calcolatore elettronico. La macchina di Von Neumann. Supporti di memorizzazione.

2. 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.

3. Elementi di programmazione
Metodi per l'analisi di un problema. Algoritmi. Metodologie di programmazione strutturata e modulare. Iterazione e ricorsione.

4. Linguaggi di programmazione
I linguaggi di programmazione e cenni alla loro evoluzione. Sintassi e semantica.

5. 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.

Testi/Bibliografia

  1. D. Sciuto, G. Buonanno, L. Mari: Introduzione ai sistemi informatici, V edizione. McGraw-Hill
  2. W. Savitch: Programmazione con Java, II edizione. Pearson
I testi potranno essere integrati da lucidi integrativi scaricabili dal sito Web del corso, che fornirà anche testi e soluzioni di prove d'esame, software di supporto alla programmazione, ecc.

Metodi didattici

Il corso viene erogato mediante proiezione di slide dal computer del docente, in aula. Le slide corrispondono al contenuto dei libri di testo ufficialmente adottati per il corso.

Le lezioni sono integrate da esercitazioni in laboratorio al computer tenute dal tutor del corso: ogni esercitazione affronta uno specifico argomento proponendo esercizi concreti, per la cui soluzione è necessario mettere a frutto quanto acquisito durante le ore di lezione col docente.

Tutte le lezioni sono tenute in italiano. È quindi necessaria la comprensione della lingua italiana per seguire con profitto il corso e per poter utilizzare il materiale didattico fornito.

Modalità di verifica dell'apprendimento

La verifica dell’apprendimento avviene attraverso un esame finale, che accerta l’acquisizione delle conoscenze e delle abilità attese tramite lo svolgimento di una prova pratica che si svolgerà in laboratorio, della durata di 2.5 ore, seguita da una eventuale prova orale.

Per poter partecipare alla prova pratica è necessario iscriversi alla lista dell'appello tramite l'applicativo AlmaEsami.

La prova pratica consiste di norma di due parti: la prima dedicata agli argomenti più teorici del corso consisterà nel rispondere ad alcune domande. La seconda consisterà nel realizzare un piccolo programma funzionante, usando il linguaggio Java. Per superare la prova è necessario ottenere un punteggio minimo di 15 punti.

La prova orale è necessaria solo qualora il voto della prova pratica non sia superiore a 17, oppure a richiesta del docente. La prova orale consiste in un approfondimento orale, con il docente, volto ad accertare la comprensione dello studente dei contenuti presentati a lezione. La prova orale deve obbligatoriamente essere svolta nello stesso appello della prova pratica.

Strumenti a supporto della didattica

Le lezioni in aula verranno svolte utilizzando lucidi, con il supporto della lavagna per lo svolgimento di esercizi.

Le esercitazioni in laboratorio consentiranno ad ogni studente di disporre di un calcolatore sul quale svolgere l'attività di programmazione prevista, sotto la guida di un tutor.

Link ad altre eventuali informazioni

http://www-db.disi.unibo.it/courses/FIT1-AK/

Orario di ricevimento

Consulta il sito web di Federico Chesani

Consulta il sito web di Marco Patella