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

Anno Accademico 2018/2019

  • Docente: Marco Patella
  • Crediti formativi: 9
  • Lingua di insegnamento: Italiano
  • Modalità didattica: Convenzionale - Lezioni in presenza
  • Campus: Bologna
  • Corso: Laurea in Ingegneria gestionale (cod. 0925)

Conoscenze e abilità da conseguire

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.

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.

6. Complessità computazionale
Tipi di complessità computazionale. Modelli di costo. Complessità in passi base. Complessità asintotica.

7. Basi di dati relazionali
Cenni sul modello relazionale.

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 e valutazione 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 scritta della durata di 2.5 ore senza l'aiuto di appunti o libri, seguita da una eventuale prova orale.

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

La prova scritta consiste di norma di 6 esercizi, di cui 2 domande di teoria, 1 esercizio sulla rappresentazione dei numeri binari, 1 esercizio sulla complessità temporale e 3 esercizi di programmazione Java. Per superare la prova scritta è necessario ottenere un punteggio minimo di 15 punti, di cui almeno 0.5 nelle domande di teoria.

La prova orale è necessaria solo in caso il voto della prova scritta non sia superiore a 17 o 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 scritta.

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. Lo studente è comunque in grado di superare la prova scritta (e di acquisire anche la valutazione massima prevista) anche senza frequentare il laboratorio.

Link ad altre eventuali informazioni

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

Orario di ricevimento

Consulta il sito web di Marco Patella