Salta al contenuto principale
CODICE 80311
ANNO ACCADEMICO 2023/2024
CFU
SETTORE SCIENTIFICO DISCIPLINARE INF/01
LINGUA Italiano
SEDE
  • GENOVA
PERIODO 1° Semestre
MATERIALE DIDATTICO AULAWEB

PRESENTAZIONE

Scopo dell'insegnamento è migliorare le capacità di programmazione degli studenti e farli familiarizzare con tecnologie e metodologie di largo impiego nel mondo industriale; in particolare, con il concetto di piattaforma, esemplificato sul .NET framework, con alcuni strumenti di produttività, quali Visual Studio, e con lo sviluppo a componenti.

Per seguire proficuamente l’insegnamento bisogna saper programmare in un linguaggio object-oriented e avere una conoscenza elementare di basi di dati.

OBIETTIVI E CONTENUTI

OBIETTIVI FORMATIVI

Acquisire i concetti base di progettazione e programmazione basata su componenti e familiarizzare con tecnologie e strumenti di produttività in uso nell'ambito professionale, integrando e ampliando le competenze di sviluppo software già conseguite in altri corsi.

OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

Attraverso lo studio individuale e la pratica di programmazione, al termine dell'iinsegnamento gli studenti

  • saranno in grado di implementare piccoli progetti in ambiente DotNet
  • avranno acquisito familiarità con le funzionalità base di Visual Studio
  • avranno sperimentato l'uso di unit testing per migliorare la qualità del codice e acquisito i concetti alla base di tale tecnica
  • avranno imparato a sviluppare codice che rispetta le specifiche
  • avranno imparato ad usare l'Entity Framework per interagire con una base di dati SQL-Server 

PREREQUISITI

  • Programmazione imperativa e object-oriented (strutture dati, cicli, ereditarietà, gestione eccezioni, sistemi di tipi...)
  • Progettazione e concetti fondamentali di Basi di Dati (tabelle, interrogazioni, vincoli...)
  • Ciclo di vita del software (progettazione, implementazione, testing...)

MODALITA' DIDATTICHE

L’insegnamento si compone di lezioni frontali e di una parte di  laboratorio guidato in cui vengono applicate le tecniche e i principi introdotti durante le lezioni frontali.

PROGRAMMA/CONTENUTO

TAP introduce le tecnologie, metodologie e strumenti mainstream per lo sviluppo del software. Come "effetto collaterale", gli studenti miglioreranno le loro capacità di programmazione.
L'insegnamento sviluppa due argomenti principali:

  1. Programmazione in-the-small. Gli studenti dovranno dimostrare di saper
    • leggere, capire e implementare una specifica dettagliata
    • eseguire attività di unit testing, usando il risultato per correggere eventuali errori
    • progettare e usare un piccolo database
      Una ragionevole familiarità con queste attività è un prerequisito dell'insegnamento. TAP affronterà l'integrazione di questi aspetti.
  2. Sviluppo a componenti, principi di programmazione modulare e riuso; gli studenti dovranno imparare:
    • le motivazioni economiche e storiche per il riuso
    • concetti alla base delle componenti e dei modelli a componenti
    • concetti base di framework/piattaforma
    • impatto dell'uso di componenti riusabili sullo sviluppo di un sistema
    • peculiarità del processo di sviluppo di una componente riusabile

​I concetti esposti saranno concretizzati mediante attivita progettuali, che si svolgeranno fin dall'inizio del periodo di lezione e permetteranno anche di prendere familiarità con vari strumenti per lo sviluppo e il testing in ambiente .NET.

Questo insegnamento è obbligatorio per il curriculum TECNOLOGICO e può essere scelto per il curriculum PROPEDEUTICO

TESTI/BIBLIOGRAFIA

Le indicazioni sui testi di riferimento e sulla documentazione di strumenti/tecnologie saranno disponibili su Aulaweb e nelle slide dell'insegnamento.

DOCENTI E COMMISSIONI

Commissione d'esame

MAURA CERIOLI (Presidente)

DAVIDE ANCONA

GIOVANNI LAGORIO (Presidente Supplente)

MAURIZIO LEOTTA (Supplente)

LEZIONI

INIZIO LEZIONI

In accordo con il calendario didattico approvato dal Consiglio dei Corsi di Studio in Informatica

Orari delle lezioni

L'orario di tutti gli insegnamenti è consultabile all'indirizzo EasyAcademy.

ESAMI

MODALITA' D'ESAME

Per superare l'esame gli studenti dovranno superare una prova scritta comprendente una parte di codice e testing.

Gli studenti che avranno così raggiunto la sufficienza potranno sostenere una prova orale.

MODALITA' DI ACCERTAMENTO

Lo scritto permette di valutare

  • le capacità di programmazione di piccoli frammenti i codice
  • la conoscenza dei concetti introdotti durante l'insegnamento

L'orale permette di verificare quanto sono stati assimilati i concetti alla base delle tecnologie adottate

Calendario appelli

Dati Ora Luogo Tipologia Note
29/01/2024 14:30 GENOVA Scritto
15/02/2024 14:30 GENOVA Scritto
03/06/2024 14:30 GENOVA Scritto
01/07/2024 14:30 GENOVA Scritto
09/09/2024 14:30 GENOVA Scritto

ALTRE INFORMAZIONI

Si consigliano gli studenti con certificazione di DSA, di disabilità o di altri bisogni educativi speciali di contattare sia il referente Prof. Sergio Di Domizio (sergio.didomizio@unige.it), sia il docente, all’inizio del corso, per concordare modalità didattiche e d’esame che, nel rispetto degli obiettivi dell’insegnamento, tengano conto delle modalità di apprendimento individuali e forniscano idonei
strumenti compensativi. Ulteriori informazioni utili si possono trovare alla pagina del sito Unige che reca le informazioni del caso: https://unige.it/disabilita-dsa/studenti-disabilità-informazioni-utili