L'insegnamento vuole arrichire le competenze dello studente sul tema della programmazione di microprocessori. Lo studente potrá apprendere le tecniche di programmazione orientate agli oggetti e acquisire la capacitá di sviluppare programmi e librerie utilizzando il linguaggio C++.
L'insegnamento mira a fornire una conoscenza teorica della progettazione dei sistemi Software basta su Programmazione Orientata agli Oggetti.
AL tempo stesso l'insegnamento ha l'obiettivo di fornire competenze pratiche di realizzazione di architetture Object-Oriented usando il Linguaggio C++.
Il risultato dell'apprendimento consiste quindi nella capacità di progettare e implementare in modo professionale un framework di classi nel contesto operativo C++.
Le lezioni alternano spiegazioni teoriche ad esercitazioni pratiche. Le spiegazioni teoriche vengono frequentemente esemplificate con l’analisi, l’esecuzione e il debug di frammenti di codice direttamente sul pc del docente; nella parte conclusiva è prevista la sperimentazione diretta su PC di ogni discente (o gruppi). Il materiale sviluppato a lezione (SW di esempi pratici) viene condiviso attraverso le piattaforme AulaWeb e Teams. Gli studenti possono interagire direttamente con il docente durante le lezioni oppure attraverso la piattaforma Teams.
E' altamente raccomandata la frequenza alle lezioni, dato che le lezioni frontali offrono dimostrazioni di progettazione software e considerazioni multidisciplinari non ritrovabili in testi di riferimento
Questo insegnamento, trattando temi di interesse scientifico-tecnologico quali l'evoluzione dell'elettronica e dei sistemi embedded a supporto della Società e della Persona, contribuisce al raggiungimento dei seguenti Obiettivi di Sviluppo Sostenibile dell'Agenda ONU 2030:
Obiettivo 3. Assicurare la salute e il benessere per tutti e per tutte le età (i sistemi embedded hanno un ruolo decisivo nel comparto salute/sanità/benessere) Obiettivo 4. Fornire un’educazione di qualità, equa ed inclusiva, e opportunità di apprendimento per tutti (la diffusione di queste competenze aumenta il livello culturale generale della società nel settore tecnologico) Obiettivo 5. Raggiungere l’uguaglianza di genere ed emancipare tutte le donne e le ragazze (l'insegnamento promuove una diffusione indifferenziata e paritaria delle competenze tecnologiche, nella certezza che i temi di elettronica possano/debbano essere pervasivi indipendentemente da età, gender e altri fattori potenzialmente discriminanti)
Materiale fornito a lezione
Per la sintassi C++ è consigliato un testo generico di introduzione al linguaggio C++
Un esempio: H. Schildt, "Guida al linguaggio C++", McGraw Hill, 1996
Ottimi (non indispensabili) i libri di Bruce Eckel "Thinking in C++"
Gli studenti con disturbi dell'apprendimento ("disturbi specifici di apprendimento", DSA) potranno utilizzare modalità e supporti specifici che verranno di volta in volta stabiliti d'intesa con il delegato dei corsi di Ingegneria nella Commissione per la Inclusione di studenti con disabilità.
Ricevimento: Su appuntamento, previa email a rodolfo.zunino@unige.it
Ricevimento: ricevimento su appuntamento email: paolo.gastaldo@unige.it
RODOLFO ZUNINO (Presidente)
CHRISTIAN GIANOGLIO
EDOARDO RAGUSA
PAOLO GASTALDO (Presidente Supplente)
L'esame ha una duplice struttura:
- Test a risposta multipla per verificare apprendimento del linguaggio di programmazione e delle competenze di OOP
- Valutazione qualitativa di un Project Work
Durante lo svolgimento delle lezioni, gli studenti possono verificare progressivamente l'apprendimento attraverso le sperimentazioni dirette di programmazione e implementazione SW
L'esame finale rappresenta un momento di verifica formale complessiva sull'insieme di nozioni e competenze apprese.
La validazione delle competenze si attua in modo progressivo nella valutazione selettiva delle risposte: - un gruppo di domande "base" mira a verificare l'acquisizione delle conoscenze fondamentali, requisiti minimi per il superamento dell'esame (18-22) inparticolare riguardo la sintassi e le principali caratteristiche di un framework C++
- un gruppo di domande di riferimento mira a verificare il livello atteso medio di conoscenza e competenze acquisite dall'insegnamento (23-28), in particoare riferite alle costruzioni tipiche dei framework C++ con aspetti professionali standard
- un gruppo di domande avanzate evidenzia la acquisizione di contenuti di livello elevato elaborati in modo autonomo dallo studente (29-30Lode), riguardanti comprensione delle meccaniche software di progettazione e funzionamento avanzato dei framework C++