PROGRAMMAZIONE DI DISPOSITIVI MOBILI E INTERFACCE UTENTE
MOBILE DEVICES AND UI PROGRAMMING
A.A. | CFU |
---|---|
2023/2024 | 9 |
Docente | Ricevimento studentesse e studenti | |
---|---|---|
Cuno Lorenz Klopfenstein | Giovedì 16:00–18:00 oppure su appuntamento |
Didattica in lingue straniere |
---|
Insegnamento con materiali opzionali in lingua straniera
Inglese
La didattica è svolta interamente in lingua italiana. I materiali di studio e l'esame possono essere in lingua straniera. |
Assegnato al Corso di Studio
Giorno | Orario | Aula |
---|
Giorno | Orario | Aula |
---|
Obiettivi Formativi
Il corso ha come obiettivo l’insegnamento dei principi di base della progettazione e dello sviluppo di applicazioni interattive. Gli studenti apprenderanno quali sono i modelli applicativi fondamentali, i paradigmi di programmazione più comuni e i concetti alla base della programmazione di applicazioni dotati di interfaccia grafica. Infine, gli studenti apprenderanno quali siano i concetti di base della programmazione mobile, paradigmi comuni di architettura software, interfaccia utente, comunicazione e persistenza dei dati.
Gli studenti svolgeranno esercitazioni in laboratorio, apprendendo l’uso di diverse tecnologie per la realizzazione di applicazioni interattive, tra cui Win32, Windows Forms e Flutter per quanto riguarda lo sviluppo per piattaforme mobili (con particolare attenzione per la piattaforma Android). Le conoscenze apprese verranno poi messe in pratica con lo sviluppo di un progetto finale d’esame.
Programma
1. Applicazioni
1.1. Modello
1.2. Piattaforme per applicazioni
1.3. Ciclo di vita
2. Applicazioni grafiche
2.1. Storia della GUI (Graphical User Interface)
2.2. Elementi di base delle applicazioni grafiche
2.3. Dal pixel raster, al punto tipografico, al DIP
2.4. Aliasing e scaling
3. Interfaccia utente
3.1. Finestre ed elementi grafici
3.2. Focus e hit-testing
3.3. Disegnare sullo schermo
3.4. Controlli standard
4. Paradigmi di programmazione GUI
4.1. Message passing con Win32
4.2. Object oriented con wxWidgets
4.3. Dichiarativo con UWP
4.4. Code-based con Flutter
5. Programmazione mobile
5.1. Piattaforme mobili e modello ad ‘app’
5.2. Interfaccia utente touch-based
5.3. Controlli standard
5.4. Memorizzazione dati e persistenza
5.5. Comunicazione inter-app
5.6. Comunicazione remota
6. Laboratorio di GUI con Win32
6.1. Linguaggio C e librerie Win32
6.2. Classi di applicazioni e “message pump”
6.3. Creazione di finestre e gestione di eventi
6.4. Finestre standard e controlli Win32
6.5. Grafica con GDI
7. Laboratorio di GUI con Windows Forms
7.1. Linguaggio C#
7.2. Il designer di Windows Forms
7.3. Proprietà ed eventi
8. Laboratorio di Flutter
8.1. Linguaggio Dart
8.2. Pacchetti Pub
8.3. Middleware Flutter
8.4. Widget
8.5. Gestione dello stato
8.6. Inherited widget e altri sistemi per la propagazione
8.7. Widget comuni
8.8. Design di applicazione
Eventuali Propedeuticità
Nessuna.
Risultati di Apprendimento (Descrittori di Dublino)
- Conoscenza e capacità di comprensione: Al termine del corso gli studenti conosceranno i principi di base della progettazione di applicazioni interattive, i comuni modelli applicativi per le piattaforme più popolari, i concetti alla base dello sviluppo di applicazioni interattive.
- Conoscenza e capacità di comprensione applicate: Al termine del corso gli studenti sapranno applicare i concetti alla base della programmazione di applicazioni interattive, come applicazioni desktop provviste di interfaccia grafica (GUI) o “app” per piattaforma mobile. Gli studenti sapranno anche applicare i principi di design di UI per ambiente responsive per la realizzazione di applicazioni multipiattaforma.
- Autonomia di giudizio: Gli studenti saranno in grado di riconoscere i pattern di programmazione ed i pattern di design più idonei, gli approcci più utili per la gestione dei dati, la comunicazione e la progettazione in generale di applicazioni modulari, efficaci ed affidabili.
Materiale Didattico
Il materiale didattico predisposto dalla/dal docente in aggiunta ai testi consigliati (come ad esempio diapositive, dispense, esercizi, bibliografia) e le comunicazioni della/del docente specifiche per l'insegnamento sono reperibili all'interno della piattaforma Moodle › blended.uniurb.it
Modalità Didattiche, Obblighi, Testi di Studio e Modalità di Accertamento
- Modalità didattiche
Lezioni frontali ed esercitazioni in laboratorio. Progetto individuale.
L'insegnamento viene erogato in modalità mista, ovvero le lezioni si svolgono simultaneamente in presenza in aula e a distanza all'interno della piattaforma Moodle.
- Obblighi
La frequenza delle lezioni non è obbligatoria.
- Testi di studio
Dispense ed esercitazioni del docente disponibili tramite piattaforma Moodle.
- Modalità di
accertamento Progetto e discussione orale.
La specifica del progetto individuale viene pubblicata tramite piattaforma Moodle. Il progetto va sviluppato individualmente. Il documento di specifica include le funzionalità minime per il superamento della prova e la tabella che descrive quanto influisce sul voto ogni singola funzionalità sviluppata correttamente nel progetto consegnato, fino ad un massimo di 30/30.
La discussione orale serve per dimostrare il funzionamento del progetto e la verifica di tutte le funzionalità (a conferma del voto del progetto), per discutere l'approccio seguito e per verificare le conoscenze teoriche di chi sostiene l'esame. Comporta un aggiustamento per eccesso o per difetto di al più 5/30.
- Disabilità e DSA
Le studentesse e gli studenti che hanno registrato la certificazione di disabilità o la certificazione di DSA presso l'Ufficio Inclusione e diritto allo studio, possono chiedere di utilizzare le mappe concettuali (per parole chiave) durante la prova di esame.
A tal fine, è necessario inviare le mappe, due settimane prima dell’appello di esame, alla o al docente del corso, che ne verificherà la coerenza con le indicazioni delle linee guida di ateneo e potrà chiederne la modifica.
Informazioni aggiuntive per studentesse e studenti non Frequentanti
- Modalità didattiche
Lezioni in streaming e come registrazioni asincrone tramite piattaforma Moodle.
- Obblighi
La frequenza delle lezioni non è obbligatoria.
- Testi di studio
Dispense ed esercitazioni del docente disponibili tramite piattaforma Moodle.
- Modalità di
accertamento Progetto e discussione orale.
La specifica del progetto individuale viene pubblicata tramite piattaforma Moodle. Il progetto va sviluppato individualmente. Il documento di specifica include le funzionalità minime per il superamento della prova e la tabella che descrive quanto influisce sul voto ogni singola funzionalità sviluppata correttamente nel progetto consegnato, fino ad un massimo di 30/30.
La discussione orale serve per dimostrare il funzionamento del progetto e la verifica di tutte le funzionalità (a conferma del voto del progetto), per discutere l'approccio seguito e per verificare le conoscenze teoriche di chi sostiene l'esame. Comporta un aggiustamento per eccesso o per difetto di al più 5/30.
- Disabilità e DSA
Le studentesse e gli studenti che hanno registrato la certificazione di disabilità o la certificazione di DSA presso l'Ufficio Inclusione e diritto allo studio, possono chiedere di utilizzare le mappe concettuali (per parole chiave) durante la prova di esame.
A tal fine, è necessario inviare le mappe, due settimane prima dell’appello di esame, alla o al docente del corso, che ne verificherà la coerenza con le indicazioni delle linee guida di ateneo e potrà chiederne la modifica.
« torna indietro | Ultimo aggiornamento: 19/07/2023 |