| | | corso | | | | | |
Sviluppo di applicazioni mobili
Codice: | 530AA | Crediti: | 6 | Semestre: | 1 | Sigla: | SAM | |
|
Settore disciplinare: | INF/01 - Informatica |
Docente
Vincenzo Gervasi
Tel. 0502212773Prerequisiti
Programmazione in Java (indispensabile) e in C (utile).
Basi di Sistemi Operativi.
Alcuni elementi del corso richiederanno una conoscenza dei fondamenti di Basi di dati e del linguaggio SQL, nonché di alcuni meccanismi di controllo della concorrenza.
Obiettivi di apprendimento
Il corso esaminerà il funzionamento del sistema operativo Android, e si concentrerà sulle competenze necessarie a scrivere applicazioni per tale sistema.
Conoscenze. Al termine del corso, lo studente conoscerà i principali meccanismi di funzionamento del sistema operativo Android (con cenni ad altri sistemi destinati a dispositivi mobili), e in che modo le applicazioni interagiscano col sistema per realizzare l'esperienza d'uso offerta all'utente.
Capacità. Lo studente che abbia seguito con profitto il corso sarà in grado di progettare, implementare e distribuire "app" per il sistema Android.
Descrizione
Il corso esaminerà il funzionamento del sistema operativo Android, e si concentrerà sulle competenze necessarie a scrivere applicazioni per tale sistema.
English Description
The course will investigate the inner workings of the Android operating system, and will focus on the skills needed to develop applications for it.
Indicazioni metodologiche
Il corso si baserà su una serie di lezioni frontali, di carattere sia teorico che pratico, e su un piccolo numero di sessioni in laboratorio, durante le quali gli studenti potranno applicare le competenze acquisiti nello sviluppo di semplici applicazioni.
Programma
- Introduzione, storia del mercato mobile, storia di Android.
- Architettura di Android; rapporto con Linux, visione a strati
- Dalvik VM, ambiente di sviluppo, deploy di applicazioni e Market
- Il sistema delle risorse e degli asset; dispatching a runtime
- Activity e ciclo di vita; il dispatching degli Intent; Layout e View; scrivere una custom View
- Listview e DataAdapter; dialog, notifiche e alert
- Drawable e sue sottoclassi; approfondimenti su 9patch
- Tematiche di storage: Bundle e Parcelable; preferenze; file system; caching; SQLlite e classi helper; ContentProvider e ContentResolver
- Services
- Broadcast receiver e servizi di sistema (telefonia, sensori, ecc.)
- Esecuzione asincrona e in background
- Programmazione nativa in C
Ore lezione: | 36 | Ore esercitazione: | 4 | Ore laboratorio: | 8 | Ore seminari: | 0 | |
Bibliografia
Reto Meier, Professional Android Application Development.
Modalità di esame
L'esame sarà di natura progettuale, con dettagli da stabilire in base alla numerosità del corso.