2. Sviluppo Mobile
Gli utenti delle applicazioni Mobile aumentano giorno dopo
giorno
Soddisfare le esigenze di questi utenti vuol dire supportare
i sistemi Android e iOS
Queste piattaforme hanno ambienti di sviluppo differenti e
linguaggi differenti per la programmazione di applicazioni
native
3. Sviluppo iOS e Android
iOS Android
Frameworks iOS Frameworks Android SDK/JAVA SDK
Tool XCode Android Studio
Language Swift/Objective C Kotlin/Java
4. Sviluppo Nativo
Vantaggi e Svantaggi
Vantaggi
Interfaccia grafica e componenti nativi
Pagine, layout e impostazioni nativi
Performance native
Aggiornamenti del framework rapidi
Svantaggi
Non 竪 possibile condividere codice
Utilizzo di IDE differenti
Necessit di team di sviluppo differenti
Tempi maggiori di sviluppo
5. Approccio Ibrido
La continua evoluzione dei dispositivi mobili ha spinto gli sviluppatori di app a studiare i meccanismi
dei principali sistemi operativi mobili per poter distribuire le proprie app su ogni market.
Sono stati proposti diversi framework, come Apache Cordova e Ionic, per realizzare app ibride cross-
platform in HTML5 e Javascript, che sfruttano gli approcci tipici delle app native e delle webapp
insieme ai classici strumenti della tecnologia Web.
In questo tipo di app il codice non 竪 sempre riutilizzabile e non si ha accesso al device in maniera
nativa ma passando da un browser
6. Xamarin Intro (1)
Per risolvere le difficolt dello sviluppo di app ibride basate su html 5, nasce nel 2011 Xamarin, una societ informatica creata da
N. Friedman e M. de Icaza e poi acquisita da Microsoft.
Lidea di Xamarin 竪 di offrire agli sviluppatori un modo semplice e veloce per creare app cross-platform basate su un unico
linguaggio orientato agli oggetti attraverso ambienti di sviluppo prestanti. Per raggiungere tale obiettivo, 竪 stato creato il
framework Xamarin basato su Mono e quindi C#.
Il nome Xamarin deriva dal nome della scimmia Tamarin, sostituendo la T iniziale con una X. X deriva da Ximian un progetto
open source sviluppato in precedenza da uno dei fondatori.
7. Xamarin Intro (2)
Uno dei pi湛 grandi pregi di Xamarin 竪 la sua essenza di
framework cross-platform nativo, ovvero, quello che vuole
ottenere un buon livello di prestazioni senza lutilizzo di pagine
HTML5
Questo 竪 stato possibile grazie alla filosofia alla base di
Xamarin, ovvero, creare dei Wrapper (dei traduttori di
linguaggio) i quali in buona sostanza fanno si che il codice
scritto in C# sia tradotto in codice Java (per Android) o
Objective-C (per iOS) al momento della compilazione.
8. Approcci allo sviluppo (1)
possibile utilizzare
un approccio di interfaccia utente (UI) separato Xamarin.iOS e
Xamarin.Android)
un approccio di interfaccia utente condivisa Xamarin.Forms
10. Xamarin.iOS e Xamarin.Android
Le interfacce vengono disegnate tramite modalit di
sviluppo nativi
La busisness logic 竪 condivisa tra piattaforme e
l'interfaccia utente 竪 separata per tutte le piattaforme con
un approccio UI separato.
11. Xamarin.Forms
Xamarin.Forms consente una maggiore condivisione 竪 possibile condividere l'interfaccia
utente dell'applicazione su tutte le piattaforme.
Xamarin.Forms include
Elementi costitutivi dell'interfaccia come pagine, layout e controlli
UI definita usando XAML
Binding dei dati
Strumenti per la navigazione attraverso le pagine
Animazioni
12. Vantaggi di Xamarin.Forms
Caratteristiche delle App simili a quelle native
Business Logic condivisa
UI condivisa
Un team di sviluppo Xamarin per app multipiattaforma
Tempi di sviluppo inferiori