SlideShare una empresa de Scribd logo
1 de 12
Xamarin
Introduzione a Xamarin
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
Sviluppo iOS e Android
iOS Android
Frameworks iOS Frameworks Android SDK/JAVA SDK
Tool XCode Android Studio
Language Swift/Objective C Kotlin/Java
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
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
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.
 L’idea 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.
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 l’utilizzo 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.
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
Approcci allo sviluppo (2)
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.
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
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

Más contenido relacionado

La actualidad más candente

Introduction to iOS development with Xamarin
Introduction to iOS development with XamarinIntroduction to iOS development with Xamarin
Introduction to iOS development with Xamarin
Raffaele Fanizzi
 
Sviluppo di applicazioni mobile con PhoneGap
Sviluppo di applicazioni mobile con PhoneGapSviluppo di applicazioni mobile con PhoneGap
Sviluppo di applicazioni mobile con PhoneGap
DotNetMarche
 

La actualidad más candente (13)

Mobile development .net
Mobile development .netMobile development .net
Mobile development .net
 
INTRO TO XAMARIN
INTRO TO XAMARININTRO TO XAMARIN
INTRO TO XAMARIN
 
Introduction to iOS development with Xamarin
Introduction to iOS development with XamarinIntroduction to iOS development with Xamarin
Introduction to iOS development with Xamarin
 
Introduction to Xamarin
Introduction to XamarinIntroduction to Xamarin
Introduction to Xamarin
 
Google IO Catania - 20/05/2016
Google IO Catania - 20/05/2016Google IO Catania - 20/05/2016
Google IO Catania - 20/05/2016
 
Nativo vs Xamarin pro e contro
Nativo vs Xamarin pro e controNativo vs Xamarin pro e contro
Nativo vs Xamarin pro e contro
 
Xamarin.Forms Introduction
Xamarin.Forms IntroductionXamarin.Forms Introduction
Xamarin.Forms Introduction
 
Xamarin Forms: one technology to rule them all - Matteo Pagani - Codemotion R...
Xamarin Forms: one technology to rule them all - Matteo Pagani - Codemotion R...Xamarin Forms: one technology to rule them all - Matteo Pagani - Codemotion R...
Xamarin Forms: one technology to rule them all - Matteo Pagani - Codemotion R...
 
Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...
Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...
Improve mobile development with Visual Studio 2017 for Mac & Visual Studio Te...
 
Xamarin Robotics
Xamarin RoboticsXamarin Robotics
Xamarin Robotics
 
Sviluppo di applicazioni mobile con PhoneGap
Sviluppo di applicazioni mobile con PhoneGapSviluppo di applicazioni mobile con PhoneGap
Sviluppo di applicazioni mobile con PhoneGap
 
Introduzione Xamarin
Introduzione XamarinIntroduzione Xamarin
Introduzione Xamarin
 
Flutter: Google alla conquista del mobile multi piattaforma
Flutter: Google alla conquista del mobile multi piattaformaFlutter: Google alla conquista del mobile multi piattaforma
Flutter: Google alla conquista del mobile multi piattaforma
 

Similar a Introduzione a Xamarin

Smau milano 2012 arena social media davide-senatore
Smau milano 2012   arena social media davide-senatoreSmau milano 2012   arena social media davide-senatore
Smau milano 2012 arena social media davide-senatore
SMAU
 

Similar a Introduzione a Xamarin (20)

Nativo vs Xamarin: pro e contro
Nativo vs Xamarin: pro e controNativo vs Xamarin: pro e contro
Nativo vs Xamarin: pro e contro
 
Xamarin: Shared Library and Portable Class Library - Aristide Di Francesco - ...
Xamarin: Shared Library and Portable Class Library - Aristide Di Francesco - ...Xamarin: Shared Library and Portable Class Library - Aristide Di Francesco - ...
Xamarin: Shared Library and Portable Class Library - Aristide Di Francesco - ...
 
Smau milano 2012 arena social media davide-senatore
Smau milano 2012   arena social media davide-senatoreSmau milano 2012   arena social media davide-senatore
Smau milano 2012 arena social media davide-senatore
 
Smau Napoli 2016 - Michele Aponte, Microsoft
Smau Napoli 2016 - Michele Aponte, MicrosoftSmau Napoli 2016 - Michele Aponte, Microsoft
Smau Napoli 2016 - Michele Aponte, Microsoft
 
Meet no Neet: presentazione del progetto App per organizzare eventi
Meet no Neet: presentazione del progetto App per organizzare eventiMeet no Neet: presentazione del progetto App per organizzare eventi
Meet no Neet: presentazione del progetto App per organizzare eventi
 
Workshop AngularJs, Cordova, Ionic - Politecnico di Milano
Workshop AngularJs, Cordova, Ionic - Politecnico di MilanoWorkshop AngularJs, Cordova, Ionic - Politecnico di Milano
Workshop AngularJs, Cordova, Ionic - Politecnico di Milano
 
Mobile Development: una introduzione per Web Developers
Mobile Development: una introduzione per Web DevelopersMobile Development: una introduzione per Web Developers
Mobile Development: una introduzione per Web Developers
 
Intro xamarin forms
Intro xamarin formsIntro xamarin forms
Intro xamarin forms
 
XeDotNet - .Net MAUI
XeDotNet - .Net MAUIXeDotNet - .Net MAUI
XeDotNet - .Net MAUI
 
Beacon & Xamarin
Beacon & XamarinBeacon & Xamarin
Beacon & Xamarin
 
Sviluppare una app mobile net oriented
Sviluppare una app mobile net orientedSviluppare una app mobile net oriented
Sviluppare una app mobile net oriented
 
App mobile cross-platform con Xamarin
App mobile cross-platform con XamarinApp mobile cross-platform con Xamarin
App mobile cross-platform con Xamarin
 
Italian C++ MeetUp - 24/10/2015
Italian C++ MeetUp - 24/10/2015Italian C++ MeetUp - 24/10/2015
Italian C++ MeetUp - 24/10/2015
 
Sviluppo di App cross-platform con Cordova e HTML5
Sviluppo di App cross-platform con Cordova e HTML5Sviluppo di App cross-platform con Cordova e HTML5
Sviluppo di App cross-platform con Cordova e HTML5
 
Wise Emotions
Wise EmotionsWise Emotions
Wise Emotions
 
App vs mobile website - Intervento di Claudio Tonti (Websolute) a Branding 2....
App vs mobile website - Intervento di Claudio Tonti (Websolute) a Branding 2....App vs mobile website - Intervento di Claudio Tonti (Websolute) a Branding 2....
App vs mobile website - Intervento di Claudio Tonti (Websolute) a Branding 2....
 
App vs Mobile website: quale lo scenario vincente?
App vs Mobile website: quale lo scenario vincente?App vs Mobile website: quale lo scenario vincente?
App vs Mobile website: quale lo scenario vincente?
 
Unofficial Xamarin Day DomusDotNet
Unofficial Xamarin Day DomusDotNetUnofficial Xamarin Day DomusDotNet
Unofficial Xamarin Day DomusDotNet
 
Xamarin & Cognitive Services Slides
Xamarin & Cognitive Services SlidesXamarin & Cognitive Services Slides
Xamarin & Cognitive Services Slides
 
Mobile platforms development overview
Mobile platforms development overviewMobile platforms development overview
Mobile platforms development overview
 

Más de Beniamino Ferrari

Más de Beniamino Ferrari (13)

Laravel 7 REST API
Laravel 7 REST APILaravel 7 REST API
Laravel 7 REST API
 
Laravel Framework PHP
Laravel Framework PHPLaravel Framework PHP
Laravel Framework PHP
 
Xamarin.android
Xamarin.androidXamarin.android
Xamarin.android
 
Persistenza su Xamarin
Persistenza su XamarinPersistenza su Xamarin
Persistenza su Xamarin
 
Interfaccia di Xamarin
Interfaccia di XamarinInterfaccia di Xamarin
Interfaccia di Xamarin
 
Xaml su Xamarin
Xaml su XamarinXaml su Xamarin
Xaml su Xamarin
 
Installazione di Xamarin
Installazione di XamarinInstallazione di Xamarin
Installazione di Xamarin
 
Net core base
Net core baseNet core base
Net core base
 
Corso angular js material
Corso angular js materialCorso angular js material
Corso angular js material
 
Corso angular js componenti
Corso angular js componentiCorso angular js componenti
Corso angular js componenti
 
Corso angular js base
Corso angular js baseCorso angular js base
Corso angular js base
 
Corso linux base
Corso linux baseCorso linux base
Corso linux base
 
couchbase mobile
couchbase mobilecouchbase mobile
couchbase mobile
 

Último

Último (9)

GIORNATA TECNICA 18/04 | DE LEO Antonio
GIORNATA TECNICA 18/04  | DE LEO AntonioGIORNATA TECNICA 18/04  | DE LEO Antonio
GIORNATA TECNICA 18/04 | DE LEO Antonio
 
GIORNATA TECNICA 18/04 | DE ROSA Roberto
GIORNATA TECNICA 18/04 | DE ROSA RobertoGIORNATA TECNICA 18/04 | DE ROSA Roberto
GIORNATA TECNICA 18/04 | DE ROSA Roberto
 
GIORNATA TECNICA 18/04 | LITTERIO Raffaele
GIORNATA TECNICA 18/04 | LITTERIO RaffaeleGIORNATA TECNICA 18/04 | LITTERIO Raffaele
GIORNATA TECNICA 18/04 | LITTERIO Raffaele
 
GIORNATA TECNICA 18/04 | BENANTI Alessandro
GIORNATA TECNICA 18/04 | BENANTI AlessandroGIORNATA TECNICA 18/04 | BENANTI Alessandro
GIORNATA TECNICA 18/04 | BENANTI Alessandro
 
GIORNATA TECNICA DA AQP 18/04 | MOTTA Simone
GIORNATA TECNICA DA AQP 18/04 | MOTTA SimoneGIORNATA TECNICA DA AQP 18/04 | MOTTA Simone
GIORNATA TECNICA DA AQP 18/04 | MOTTA Simone
 
Descrizione della struttura architettonica Eretteo.pptx
Descrizione della struttura architettonica Eretteo.pptxDescrizione della struttura architettonica Eretteo.pptx
Descrizione della struttura architettonica Eretteo.pptx
 
Presentzione Matematica similitudini circonferenze e omotetie.pptx
Presentzione  Matematica similitudini circonferenze e omotetie.pptxPresentzione  Matematica similitudini circonferenze e omotetie.pptx
Presentzione Matematica similitudini circonferenze e omotetie.pptx
 
GIORNATA TECNICA 18/04 | SPIZZIRRI Massimo
GIORNATA TECNICA 18/04 | SPIZZIRRI MassimoGIORNATA TECNICA 18/04 | SPIZZIRRI Massimo
GIORNATA TECNICA 18/04 | SPIZZIRRI Massimo
 
GIORNATA TECNICA DA AQP 18/04 | ZONNO Serena
GIORNATA TECNICA DA AQP 18/04 | ZONNO SerenaGIORNATA TECNICA DA AQP 18/04 | ZONNO Serena
GIORNATA TECNICA DA AQP 18/04 | ZONNO Serena
 

Introduzione a Xamarin

  • 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.  L’idea 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 l’utilizzo 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