Descrizione
L'evoluzione tecnologica ha portato alla creazione di dispositivi portatili (PDA, Smartphone, Tablet) con capacità di memorizzazione e potenza di calcolo paragonabile a quella dei PC e dei laptop di pochi anni fa. Le aziende stanno iniziando a portare, con successo, le proprie applicazioni su questi strumenti (basta pensare alle oltre 300.000 applicazioni attualmente sviluppate per iPhone). La “guerra” tra i produttori di dispositivi per l'imposizione della loro piattaforma complica le operazioni di progettazione e di sviluppo di applicazioni e rende difficoltosa la creazione di applicazioni realmente portabili.
Le potenzialità delle piattaforme mobili sono notevoli ma gli errori che si possono fare in fase di progetto e sviluppo delle applicazioni possono ridurre, se non annullare, i vantaggi di queste tecnologie.
Il corso, partendo dall'analisi delle differenze tra un'applicazione tradizionale ed un'applicazione per dispositivi mobili, descrive e confronta le principali architetture e le principali tecnologie che è possibile utilizzare e fornisce "gli strumenti" teorici e pratici per progettare e sviluppare al meglio le applicazioni. La descrizione dei vari argomenti è coadiuvata dall'utilizzo di esempi pratici.
A chi si rivolge
* capi progetto
* analisti
* progettisti
* sviluppatori
* chiunque sia interessato ad approfondire i concetti relativi allo sviluppo di applicazioni per il Mobile Computing
Prerequisiti
Nessuno.
Argomenti Trattati
Introduzione al Mobile Computing
* cos'è il Mobile Computing
* anatomia di un dispositivo mobile (prestazioni ridotte, bassa capacità di memoria, banda di rete limitata...)
* categorie di dispositivi mobili
Progettare applicazioni mobili
* architettura delle applicazioni mobili (stand-alone, Web e Client/Server)
* caratteristiche delle applicazioni mobili
* progetto della user interface
o stand-alone o Web application
o pattern per l'interazione con l'utente
o progettare applicazioni per uno “schermo ridotto”
o progettare Web application fruibili su dispositivi differenti
* Il problema della portabilità
* strumenti per il progetto e il disegno della user interface
* progettare il layer a servizi
o SOAP o REST?
* problematiche di accessibilità e usabilità
Piattaforme a confronto
* le principali piattaforme per il Mobile Computing (Apple iOS, Symbiam, Windows Mobile, Android, Palm WebOs...)
* vantaggi e svantaggi delle singole piattaforme
* Confronto tra le piattaforme
Sviluppo di applicazioni mobili
* pattern per lo sviluppo delle applicazioni
* le tecnologie per lo sviluppo di applicazioni mobili
o tecnologie Apple
o Java ME e Java FX
o lo Script engine di Android
o Microsoft Silverlight
o le tecnologie basate su flash
o il nuovo HTML5 e le applicazioni mobili
* sviluppare applicazioni multipiattaforma
* implementare il layer a servizi
* testing di un'applicazione mobile
Problematiche di sicurezza delle applicazioni mobili
* criticità relative alla sicurezza delle applicazioni mobili
* strumenti e standard per la sicurezza di applicazioni mobili
* principali pattern per progettare e implementare la sicurezza di applicazioni mobili
Cloud Computing, SOA, Web 2.0 e mobile users
* vista d'insieme
* strumenti SOA per il Cloud Computing
* applicazioni Web 2.0 on the Cloud
* il Cloud Computing e le piattaforme mobili
Vendere le applicazioni mobili
* modelli di Business
* gli store on-line
* pubblicità embedded
Casi Studio ed esempi
Official Website: http://www.technologytransfer.it/index.cfm?kLang=1&cis=2;1;1&rec=613
Added by Technology Transfer on February 17, 2011