Salta ai contenuti. | Salta alla navigazione

Strumenti personali

Il modulo B, in breve

Nel modulo B del corso di Fondamenti di Informatica e Laboratorio si apprendono le tecniche realizzative delle principali strutture di dato, in linguaggio C, anche discutendo la complessità degli algoritmi su strutture di dato. Dalla nozione di componente software e di tipo di dato astratto, si passa poi a considerare la  programmazione ad oggetti, per la quale si presenta il linguaggio Java  come esempio. Si presenta inoltre la JCF di Java come insieme di componenti per la realizzazione delle principali strutture dati viste nella prima parte del corso.

Prerequisiti

E' necessario avere studiato ed acquisito i contenuti del modulo di Fondamenti di Informatica e laboratorio - modulo A.

Obiettivi di apprendimento

  • Approfondire l’uso del linguaggio C rispetto a quanto noto da Fondamenti di Informatica - modulo A
  • Imparare ad utilizzare le principali strutture di dato utilizzate per applicazioni informatiche e gli algoritmi associati
  • Comprendere il concetto di componente software (modulo, tipo di dato astratto, classe e oggetto)
  • Imparare i principi della programmazione a oggetti e una sua esemplificazione attraverso il linguaggio Java
  • Sperimentare librerie di componenti Java che realizzano le principali strutture dati viste (Java Collection Framework)

Argomenti in dettaglio

  • Approfondimenti sul linguaggio C: funzioni come parametri, variabili statiche.
  • Algoritmi e strutture di dati: tecniche per la gestione di tavole, liste semplici e liste eordinate, alberi binari e alberi binari di ricerca, e loro realizzazione in C. Algoritmi di ricerca su tali strutture dati. Cenni alla complessità degli algoritmi.
  • La programmazione a oggetti e il linguaggio Java: i principi della programmazione a oggetti (astrazione, incapsulamento e protezione, ereditarietà). Il linguaggio Java: concetti di classe e istanza, costruzione e distruzione di oggetti, oggetti semplici e oggetti composti. Package. Ereditarietà, Classi Astratte, Interfacce. Package di I/O. Eccezioni. Strutture dati in Java (Java Collection Framework).

Modalità di erogazione

Il corso sarà erogato attraverso video-lezioni registrate, caricate su un corso Classroom e esercitazioni settimanali (in streaming e se possibile in presenza contemporanea in Laboratorio INFO1 e INFO2, previa prenotazione). Anche delle esercitazioni saranno fornite delle video-guide registrate sul corso Classroom.

Le esercitazioni pratiche al computer (in autonomia, in streaming o in laboratorio) sono parte integrante del corso, poiché con gli strumenti  di programmazione  si sperimentano e consolidano gli argomenti trattati nelle lezioni. La frequenza delle esercitazioni (in streaming o in laboratorio) è fortemente consigliata perché allo studente è richiesto di acquisire un adeguato livello di operatività con gli ambienti di programmazione (C e Java) inerenti gli argomenti del corso, poiché la prova d'esame comprende anche due prove di programmazione.Il modulo B, in breve