|Politecnico di Torino|
|Anno Accademico 2014/15|
Mobile application development
Corso di Laurea Magistrale in Ingegneria Informatica (Computer Engineering) - Torino
Corso di Laurea Magistrale in Ingegneria Delle Telecomunicazioni (Telecommunications Engineering) - Torino
02GPJ; 01NRL; 01BIT; 02JGR; 02NRI
The course aims at teaching the fundamentals of mobile application design and development. It explores the principles and the challenges in designing and developing for this peculiar kind of devices, focusing on smart phone platforms such as Android and iOS. These platforms are continuously growing and becoming active and important participant in the wider mobile ecosystem. The material will be presented through a thorough study of the architecture, and a rich set of practical examples that covers all aspect of the mobile device usage.
Risultati di apprendimento attesi
This course will allow students to design and develop medium-complexity applications on mobile platforms.
The assignments and structure of the class is organized to accomplish the following learning objectives:
1. Be competent in programming in the event-based model used in application frameworks for mobile devices
2. Be able to analyze and design a suitable user experience for a mobile application
3. Be able to write and deploy an application using a mobile computing software framework
4. Be able to describe and leverage the differences in software development between mobile device programming and server application programming, and develop applications that incorporate both programming methods to efficiently construct a single application task
5. Get hands-on experience of development, test, and debugging techniques for mobile applications (both stand-alone and server-based ones).
Prerequisiti / Conoscenze pregresse
Operating systems; Object oriented programming; concurrent and distributed programming.
Introduction to the mobile ecosystem (6h)
History and trends in market, technology, expectations
What makes mobile unique
Non functional issues (usability, energy management, device non homogeneity)
Native vs. web applications
Overview of main mobile operating systems
Guidelines for mobile application design (6h)
User experience and interaction design
App Design Strategies
User Experience Guidelines
The Android Operating System (27h)
Activities and their life-cycle
Views, adapters, fragments, and the action bar
2D Graphics and animations
Networking and Web
Introduction to the iOS Operating System (15h)
The ObjectiveC language
The CocoaTouch framework
Multimedia, networking and multithreading
Multiplatform development (6h)
Mobile web applications and frameworks
Cross-platform native frameworks
This course will be conducted using a combination of formal class lectures and hands-on assignments. Lectures will cover theoretical concepts and backgrounds related to Mobile application development. Extensive examples will be used to illustrate the taught principles.
Testi richiesti o raccomandati: letture, dispense, altro materiale didattico
Android wireless application development, by Shane Conder and Lauren Darcey. 2nd ed., Addison-Wesley, 2011
Designing Mobile Interfaces, by Steven Hoober and Eric Berkman, OReilly, 2012
Teacher-provided slides and material
Criteri, regole e procedure per l'esame
Written examination (55%) and oral evaluation of coursework assignments (45%). These will include a final project, where student teams will design and implement a complete solution of a given application. This will help them develop a strong understanding of the software development process by participating in all aspects of its development life cycle.
|Orario delle lezioni|
|Statistiche superamento esami|
Programma definitivo per l'A.A.2014/15