Corsi

I corsi del Master si articolano su quattro aree tematiche, descritte nel seguito. Ai corsi si affianca un’attività di tirocinio, composta in parte da attività di gruppo in un laboratorio attrezzato dal Master con dotazione di hardware dedicato, e in parte da uno stage presso aziende del settore. 

Area programmativa

I corsi dell’area programmativa riguardano gli aspetti legati ai linguaggi, agli ambienti di sviluppo, ai toolkit e framework di sistema delle principali piattaforme mobili. Scopo di questi corsi è mettere i partecipanti in grado di sviluppare autonomamente applicazioni complete per le principali piattaforme.

  • Programmazione iOS (9 CFU, 36 ore frontali + 18 ore laboratorio). I linguaggi Objective C e Swift; l’ambiente XCode, basi di programmazione per iOS; i framework più comuni; deployment su iPhone e iPad.
  • Programmazione Android (9 CFU, 36 ore frontali + 18 ore laboratorio). L’architettura di Android: Linux, Java, Dalvik e ART; gli ambienti Eclipse+ADT e Android Studio; sviluppo di applicazioni in Java (SDK) e in C (NDK); librerie di sistema.
  • Programmazione Windows (9 CFU, 36 ore frontali + 18 ore laboratorio). C# e .NET mobile edition; Visual Studio e Windows Phone SDK; Windows Presentation Framework. Librerie di sistema. 

Area infrastrutturale

Questi corsi si concentrano sui rapporti fra le applicazioni su dispositivi mobili e l’ambiente in cui esse vengono usate, con particolare riferimento ai due segmenti delle applicazioni consumer e enterprise.

  • Applicazioni enterprise (3 CFU, 18 ore). Supporto lato server, integrazione con infrastrutture aziendali, casi di studio.
  • Applicazioni wearable (3 CFU, 18 ore). Sviluppo per dispositivi indossabili (smart watch, fitness tracker, Google Glass). Analogie e differenze con lo sviluppo con target automotive e TV.
  • Applicazioni embedded e IoT (3 CFU, 18 ore). Progettazione e sviluppo di applicazioni embedded. Arduino e board analoghe. Costruzione di smart connected objects per Internet of Things. Interfacciamento fra smart objects e dispositivi mobili.

Area tecnologica

I corsi dell’area tecnologica si concentrano su aspetti specifici, indipendenti dalla particolare piattaforma, quali l’interpretazione dei dati forniti dai sensori hardware o l’elaborazione di segnali.

  • Sensoristica e signal processing (3 CFU, 18 ore). Aspetti teorici e pratici dell’uso dei sensori in dotazione comune ai dispositivi mobili o di uso comune in applicazioni embedded (inclusi sensori per fitness e eHealth); elaborazione dei segnali.
  • Servizi cloud per mobile (3 CFU, 18 ore). Integrazione con servizi cloud; tipologie di servizio, piattaforme, interfacce. Principali provider cloud: Azure, AWS, Google App Engine. Applicazioni in larga scala. Esempi di applicazioni.

Area sociale

Appartengono all’area sociale i corsi che si concentrano sugli aspetti più “umani” dello sviluppo di applicazioni, sia dal punto di vista realizzativo, che da quello commerciale.

  • Design e user experience (3 CFU, 18 ore). Progettazione di interfacce utente mobili; uso di touch e sensori per l’interazione; basi di grafica e tipografia. Dalle funzionalità alla User eXperience.