66860 - LABORATORIO DI APPLICAZIONI MOBILI

Anno Accademico 2011/2012

  • Docente: Luciano Bononi
  • Crediti formativi: 6
  • SSD: INF/01
  • Lingua di insegnamento: Italiano
  • Modalità didattica: Convenzionale - Lezioni in presenza
  • Campus: Bologna
  • Corso: Laurea in Informatica per il management (cod. 8014)

Conoscenze e abilità da conseguire

Al termine del corso, lo studente conosce gli aspetti tecnologici e metodologici e gli strumenti per lo sviluppo di applicazioni per dispositivi mobili, su piattaforme iOS (iPhone, iPad, iPod Touch) e Android. Conosce inoltre la gestione di dispositivi dotati di interfacce utente innovative, multi-touch, gestione eventi, la programmazione objectiveC, Eclipse e Android SDK, design patterns, interfacciamento dati esterno, sensori e geo-localizzazione, servizi di networking, debugging e test di applicazioni. Conosce infine: - le problematiche delle applicazioni eseguite in contesto wireless mobile; - le piattaforme più importanti per lo sviluppo di applicazioni mobili; - le API dei device interni; - la gestione della multimedialità in contesto wireless mobile; - iPhone SDK e Android SDK; - come progettare e implementare una applicazione con il pattern architetturale Model-View-Control nei due ambienti di sviluppo.

Contenuti

Panoramica sugli aspetti tecnologici dei dispositivi iPhone, iPod Touch e iPad.
Panoramica aspetti tecnologici dei dispositivi Android.
iOS technology layers: Core OS, Core Services, Media, Cocoa Touch.
iOS e iOS SDK.
Strumenti di sviluppo per la piattaforma iOS: Xcode, Interface Builder, Simulator, Instruments.
Componenti applicazioni Android, Applications, Activities, Activity stack, tasks, Intents.
ObjectiveC.
Java e XML.
Inizializzazione degli oggetti e gestione della memoria.
Proprietà, Protocolli e Categorie in Objective-C.
Cocoa design pattern, Model-View-Controller.
Target, Action, Outlets.
Singleton, Notification, Delegate.
Foundation Framework e UIKit (Cocoa Touch).
Interfaccia utente, UIWindow e UIView.
Creazione di una UIViewController e gestione applicazioni MultiViews, controllers e views.
Gestione eventi Touch e Multi-touch, gestures.
Input di testo e gestione del testo.
Strumenti e modelli per la persistenza dei dati su iOS.
CoreData e Table Views.
Interfacciamento con dati esterni (e web).
Implementazione delle mappe e servizi di geo-localizzazione.
Sensore di movimento e accelerometro.
Interfacce ruotabili e ridimensionabili.
Networking services.
Debugging e Testing delle applicazioni per iOS.
App Store.

Testi/Bibliografia

Bill Dudney, Chris Adamson, Sviluppare applicazioni con iPhone SDK, Apogeo 11/2009, ISBN: 978-88-503-2895-6
Massimo Carli, Android(tm) Guida per lo sviluppatore, Apogeo 02/2010, ISBN: 978-88-503-2921-2

Metodi didattici

Lezioni in aula.
test e demo.
Laboratorio.
Esercitazioni remote.

Modalità di verifica e valutazione dell'apprendimento

Progetto.
Prova di esame orale.

Strumenti a supporto della didattica

Slide elettroniche, personal computer a proiettore.
Dispositivi e laboratorio.
Testi consigliati e riferimenti in rete.

Link ad altre eventuali informazioni

http://www.cs.unibo.it/~bononi/

Orario di ricevimento

Consulta il sito web di Luciano Bononi