SlideShare ist ein Scribd-Unternehmen logo
1 von 54
Creare app native su
iOS, Android, Mac &
Windows in C#
Introduzione a Xamarin
Chi ha già
sentito parlare
di Xamarin?
Oggi vedremo come potrete usare Xamarin per...
realizzare testare monitororare
...le vostre app!
Consente di creare app native per iOS, Android,
Mac e Windows in Visual Studio e in C#
Approcci
allo sviluppo
mobile
Approccio: “unicuique suum”
Build Apps Multiple Times
• Codice differente
• Strumenti diversi
• Richiesti più team
• Costoso e lento
Approccio: “scrivi una volta, esegui ovunque”
• Frammentazione dei browser
• Si sviluppo per una piattaforma, le
altre vengono di conseguenza:
nessuna cura dello stile specifico
della piattaforma.
Approccio offerto da Xamarin “tradizionale”
• Interfaccia Utente nativa
• Performance native
• Codice condiviso tra le
piattaforme
• C# & .NET Framework
• Supporto completo alle API
Con Xamarin.Forms:
maggiore condivisione del codice
Approccio Xamarin “tradizionale”
Shared UI Code
Approccio offerto da Xamarin.Forms
Perché Xamarin?
C# può essere eseguito da
2.5 miliardi di dispositivi.
Scrivi tutto in C#
Prima release di
Xamarin.Mac
Lanciato
programma
Partner
200,000
Developers
Xamarin
fondato
Prima release di
Xamarin.Android
Xamarin.iOS lanciato
(inizialmente noto
come MonoTouch)
Ximian
fondato
Oltre un decennio di esperienza e sviluppo
2001 2003 2009 2011 2012 2013
Mono
rilasciato
Ximian acquisito
by Novell
Xamarin 2.0
Component Store
Xamarin Test Cloud
Evolve 2013
Microsoft Partnership
500,000
Developers
100+ Partners
100+ Components
2014
//
Xamarin 3
2000
SAP Partnership
Fire TV Support
Salesforce partnership
Visionary in Gartner
Magic Quadrant
Google Glass Support
Visual Studio Partner
of the Year
Android Wear Support
Xamarin Evolve 2014
800,000
Developers
200+ Partners
200+ Components
Supporto a F#!
http://fsharp.org/use/windows/
Come funziona
Xamarin
.NET + Windows APIs
.NET + iOS APIs | copertura al 100%
.NET Android APIs | copertura al 100%
Qualsiasi cosa si possa fare in Objective-C,
Swift o Java può essere fatta in C#
con Xamarin in Visual Studio
Xamarin.iOS sfrutta la compilazione
Ahead Of Time (AOT) per produrre i
pacchetti ARM per l’Apple App Store.
Prestazioni Native
Xamarin.Android sfrutta la
compilazione Just In Time (JIT)
caratteristica del dispositivo Android.
Xamarin è sempre aggiornato
Release iOS supportate al day-one:
iOS 5, iOS 6, iOS 7, iOS 7.1, iOS 8, iOS 9, iOS 10
Supporto a:
• Google Glass
• Android Wear
• Amazon Fire TV
• Apple Watch
• Tanto altro!
Condivisione del codice: sviluppo accelerato!
• Riutilizzo del codice fino al 90%
• Utilizzo delle stesse librerie di
NuGet
• 1 solo Assembly
• Piattaforme Multiple
• Supportano:
• Xamarin.Android
• Xamarin.iOS
• Xamarin.Windows
Portable Class Libraries (PCL)
NuGet
Shared Projects
Microsoft acquisisce Xamarin!
Distribuibili ovunque
Le app Xamarin possono esssere distribuite ovunque
Xamarin Studio
PC o Mac
Plugin Visual Studio
VS 2010 e superiore
Ambienti di Sviluppo
Integrazione in Visual Studio
Una soluzione sola per:
• iOS
• Android
• Windows Phone
• Windows Store
Tutti i plugin e le funzioni
di Visual Studio:
• ReSharper
• Team Foundation Server
Integrazione in Visual Studio
Debugging su:
• Emulatori
• Dispositivi
Integrati nella toolbar:
• Stato
• Logs
• Lista di dispositivi
Xamarin Studio
• Ottimizzato per lo sviluppo
cross-platform
• Accedi alle API native con
l’autocompletamento
• Designer per Android e iOS
• Debugging avanzato su
emulatore o dispositivo
Designer per Xamarin Android
• Il migliore designer per Android
• Disponibile per
• Xamarin Studio
• Visual Studio
• Crea facilmente l’interfaccia
utente tramite drag & drop
• Affronta facilmente il problema
del rescaling e della
frammentazione di Android.
• Layout salvati in file XML
Android standard
Designer per Xamarin iOS
• Il primo designer iOS
presente in Xamarin Studio e
Visual Studio
• Simile al designer
tradizionale di Visual Studio
• Supporta pienamente l’UIKit
• Modifica i componenti
personalizzati e di terze parti
• Modifiche grafiche applicate
in tempo reale
XAML Previewer per Xamarin Forms
• Richiede la versione 2.3 del
package di Xamarin.Forms
• Consente esclusivamente di
“vedere”, non di modificare
• Disponibile per iOS/Android
Demo
Xamarin è gratuito per studenti! (e non solo)
http://xamarin.com/student
Xamarin con Visual Studio Community Edition
http://xamarin.com/download
Xamarin e Mono Open Source
https://github.com/xamarin
Xamarin
Test Cloud
Testa la tua app su centinaia di dispositivi reali
3 versioni del SO
19 dispositivi
20 lingue
35 localizzazioni
6 screen sizes
11 version del SO
6 screen configurations
27 screen sizes
39 lingue
57 localizzazioni
15 produttori
Più di 18,000 diversi
dispositivi
Le combinazioni possibili sono tante...
Inizia immediatamente
Il supporto dedicato di aiuterà ad usare
subito Xamarin Test Cloud
Centinaia di dispositivi
Assicurati che la tua app funzioni
correttamente su dispositive fisici
Report dettagliati
Feedback tecnici automatici che ti
consentiranno di capire esattamente dove
la tua app ha riscontrato problemi.
Test anti-frammentazione
Testa automaticamente su centinaia di
combinazioni di sistemi operativi, schermo
e risoluzioni.
Test sulla User Interface
Testa interamente la tua app, dall’interfaccia
grafica al code-behind.
Trova i bug prima che lo facciano i tuoi utenti
• Eseguilo direttamente da
Visual Studio o Xamarin Studio
• L’accesso è reso possibile da
un pacchetto NuGet
Usare Xamarin Test Cloud – Xamarin UITest
Demo
Monitoriggio in tempo reale. Traccia crash e eccezioni per farti capire cosa
stanno facendo i tuoi utenti per causarli
Controlla sempre le tue app
• Report immediato di
qualsiasi eccezione si
verifichi
• Disponibile AP per
l’integrazione rapida di
Xamarin Insights
Traccia e controlla
• Traccia ogni evento che si
verifica nella tua app
• Controlla quanto ogni
operazione dura all’interno
della tua app
Sono possibili molte integrazioni
Integrazione agevole con una serie di servizi per la
risoluzione dei problemi riscontrati.
Demo
Ma c’è altro!
Controlli compatibili con
Xamarin.Forms
blog.xamarin.com/enterprise-
component-vendors-join-
xamarin.forms-ecosystem/
Unrivaled Mobile Development Training
– Live online training from Xamarin experts
– Lectures and labs
– One-on-one with expert Xamarin mobile
developers
What You’ll Learn
• iOS and Android Fundamentals
• Mobile App Lifecycle
• Native UI and Controls
• Cross-platform Architecture
• Mobile Best Practices
• Secure Backend Integration
Scaricate Xamarin oggi: xamarin.com/download
Grazie per l’attenzione 
Guido Magrin
Xamarin Student Partner
@GuidoMagrin

Weitere ähnliche Inhalte

Was ist angesagt?

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...Codemotion
 
Introduzione Xamarin
Introduzione XamarinIntroduzione Xamarin
Introduzione XamarinAndrea Tosato
 
Introduction to C#
Introduction to C#Introduction to C#
Introduction to C#Guido Magrin
 
Nativo vs Xamarin pro e contro
Nativo vs Xamarin pro e controNativo vs Xamarin pro e contro
Nativo vs Xamarin pro e controCarmelo Ruota
 
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...Gaetano Paternò
 
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 MilanoGabriele Gaggi
 
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 HTML5Gabriele Gaggi
 
AngularJs, Bootstrap e Cordova: il connubio per app mobile cross-platform
AngularJs, Bootstrap e Cordova: il connubio per app mobile cross-platformAngularJs, Bootstrap e Cordova: il connubio per app mobile cross-platform
AngularJs, Bootstrap e Cordova: il connubio per app mobile cross-platformGabriele Gaggi
 
Introduction to iOS development with Xamarin
Introduction to iOS development with XamarinIntroduction to iOS development with Xamarin
Introduction to iOS development with XamarinRaffaele Fanizzi
 
DrupalDay 2014: AngularJS + IonicFramework + Drupal Services
DrupalDay 2014: AngularJS + IonicFramework + Drupal ServicesDrupalDay 2014: AngularJS + IonicFramework + Drupal Services
DrupalDay 2014: AngularJS + IonicFramework + Drupal ServicesMichel Morelli
 
Google IO Catania - 20/05/2016
Google IO Catania - 20/05/2016Google IO Catania - 20/05/2016
Google IO Catania - 20/05/2016Gaetano Paternò
 
SQLite in Xamarin.Forms
SQLite in Xamarin.FormsSQLite in Xamarin.Forms
SQLite in Xamarin.FormsGuido Magrin
 
Sviluppare applicazioni Metro con Windows 8 e WinRT
Sviluppare applicazioni Metro con Windows 8 e WinRTSviluppare applicazioni Metro con Windows 8 e WinRT
Sviluppare applicazioni Metro con Windows 8 e WinRTcodeblock
 
Flash Platform su dispositivi mobili
Flash Platform su dispositivi mobiliFlash Platform su dispositivi mobili
Flash Platform su dispositivi mobililuca mezzalira
 
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1codeblock
 

Was ist angesagt? (20)

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...
 
Xamarin
XamarinXamarin
Xamarin
 
Introduzione Xamarin
Introduzione XamarinIntroduzione Xamarin
Introduzione Xamarin
 
Introduction to C#
Introduction to C#Introduction to C#
Introduction to C#
 
Xamarin Robotics
Xamarin RoboticsXamarin Robotics
Xamarin Robotics
 
Nativo vs Xamarin pro e contro
Nativo vs Xamarin pro e controNativo vs Xamarin pro e contro
Nativo vs Xamarin pro e contro
 
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...
 
Introduzione a Xamarin
Introduzione a XamarinIntroduzione a Xamarin
Introduzione a Xamarin
 
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
 
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
 
AngularJs, Bootstrap e Cordova: il connubio per app mobile cross-platform
AngularJs, Bootstrap e Cordova: il connubio per app mobile cross-platformAngularJs, Bootstrap e Cordova: il connubio per app mobile cross-platform
AngularJs, Bootstrap e Cordova: il connubio per app mobile cross-platform
 
Introduction to iOS development with Xamarin
Introduction to iOS development with XamarinIntroduction to iOS development with Xamarin
Introduction to iOS development with Xamarin
 
Intro xamarin forms
Intro xamarin formsIntro xamarin forms
Intro xamarin forms
 
Mobile development .net
Mobile development .netMobile development .net
Mobile development .net
 
DrupalDay 2014: AngularJS + IonicFramework + Drupal Services
DrupalDay 2014: AngularJS + IonicFramework + Drupal ServicesDrupalDay 2014: AngularJS + IonicFramework + Drupal Services
DrupalDay 2014: AngularJS + IonicFramework + Drupal Services
 
Google IO Catania - 20/05/2016
Google IO Catania - 20/05/2016Google IO Catania - 20/05/2016
Google IO Catania - 20/05/2016
 
SQLite in Xamarin.Forms
SQLite in Xamarin.FormsSQLite in Xamarin.Forms
SQLite in Xamarin.Forms
 
Sviluppare applicazioni Metro con Windows 8 e WinRT
Sviluppare applicazioni Metro con Windows 8 e WinRTSviluppare applicazioni Metro con Windows 8 e WinRT
Sviluppare applicazioni Metro con Windows 8 e WinRT
 
Flash Platform su dispositivi mobili
Flash Platform su dispositivi mobiliFlash Platform su dispositivi mobili
Flash Platform su dispositivi mobili
 
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1
 

Andere mochten auch

Xamarin.iOS introduction
Xamarin.iOS introductionXamarin.iOS introduction
Xamarin.iOS introductionGuido Magrin
 
Introduction to Xamarin for Visual Studio 2017
Introduction to Xamarin for Visual Studio 2017Introduction to Xamarin for Visual Studio 2017
Introduction to Xamarin for Visual Studio 2017Xamarin
 
LGL Team - UniShare & UniBuy
LGL Team -  UniShare & UniBuyLGL Team -  UniShare & UniBuy
LGL Team - UniShare & UniBuyGuido Magrin
 
Enel Smart Info presentation
Enel Smart Info presentationEnel Smart Info presentation
Enel Smart Info presentationGuido Magrin
 
Xamarin.Android Introduction
Xamarin.Android IntroductionXamarin.Android Introduction
Xamarin.Android IntroductionGuido Magrin
 
Real Solutions Day - Cross-Platform con Xamarin
Real Solutions Day - Cross-Platform con XamarinReal Solutions Day - Cross-Platform con Xamarin
Real Solutions Day - Cross-Platform con XamarinRiccardo Cappello
 
Portable Class Library Deep Dive
Portable Class Library Deep DivePortable Class Library Deep Dive
Portable Class Library Deep DiveJames Montemagno
 
Native i os, android, and windows development in c# with xamarin 4
Native i os, android, and windows development in c# with xamarin 4Native i os, android, and windows development in c# with xamarin 4
Native i os, android, and windows development in c# with xamarin 4Xamarin
 
Visual studio 2017 - Launch Event Keynote
Visual studio 2017  - Launch Event KeynoteVisual studio 2017  - Launch Event Keynote
Visual studio 2017 - Launch Event KeynoteDelta-N
 

Andere mochten auch (9)

Xamarin.iOS introduction
Xamarin.iOS introductionXamarin.iOS introduction
Xamarin.iOS introduction
 
Introduction to Xamarin for Visual Studio 2017
Introduction to Xamarin for Visual Studio 2017Introduction to Xamarin for Visual Studio 2017
Introduction to Xamarin for Visual Studio 2017
 
LGL Team - UniShare & UniBuy
LGL Team -  UniShare & UniBuyLGL Team -  UniShare & UniBuy
LGL Team - UniShare & UniBuy
 
Enel Smart Info presentation
Enel Smart Info presentationEnel Smart Info presentation
Enel Smart Info presentation
 
Xamarin.Android Introduction
Xamarin.Android IntroductionXamarin.Android Introduction
Xamarin.Android Introduction
 
Real Solutions Day - Cross-Platform con Xamarin
Real Solutions Day - Cross-Platform con XamarinReal Solutions Day - Cross-Platform con Xamarin
Real Solutions Day - Cross-Platform con Xamarin
 
Portable Class Library Deep Dive
Portable Class Library Deep DivePortable Class Library Deep Dive
Portable Class Library Deep Dive
 
Native i os, android, and windows development in c# with xamarin 4
Native i os, android, and windows development in c# with xamarin 4Native i os, android, and windows development in c# with xamarin 4
Native i os, android, and windows development in c# with xamarin 4
 
Visual studio 2017 - Launch Event Keynote
Visual studio 2017  - Launch Event KeynoteVisual studio 2017  - Launch Event Keynote
Visual studio 2017 - Launch Event Keynote
 

Ähnlich wie Introduction to Xamarin

Nativo vs Xamarin: pro e contro
Nativo vs Xamarin: pro e controNativo vs Xamarin: pro e contro
Nativo vs Xamarin: pro e controMarco Rinaldi
 
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-senatoreSMAU
 
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 - ...Codemotion
 
Multi-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache CordovaMulti-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache CordovaAndrea Dottor
 
Unofficial Xamarin Day DomusDotNet
Unofficial Xamarin Day DomusDotNetUnofficial Xamarin Day DomusDotNet
Unofficial Xamarin Day DomusDotNetGaetano Paternò
 
Automated UI testing for iOs and Android mobile apps
Automated UI testing for iOs and Android mobile appsAutomated UI testing for iOs and Android mobile apps
Automated UI testing for iOs and Android mobile appsMassimo Bonanni
 
Introduzione alle app Windows Universal
Introduzione alle app Windows UniversalIntroduzione alle app Windows Universal
Introduzione alle app Windows UniversalAlessandro Scardova
 
ALM Revolutions - What's new in visual studio ALM 11
ALM Revolutions - What's new in visual studio ALM 11ALM Revolutions - What's new in visual studio ALM 11
ALM Revolutions - What's new in visual studio ALM 11DomusDotNet
 
Dal cloud al mobile con tecnologie Google
Dal cloud al mobile con tecnologie GoogleDal cloud al mobile con tecnologie Google
Dal cloud al mobile con tecnologie GoogleDiego Giorgini
 
Sviluppare una app mobile net oriented
Sviluppare una app mobile net orientedSviluppare una app mobile net oriented
Sviluppare una app mobile net orientedAlessandro Morvillo
 
Smau Napoli 2016 - Michele Aponte, Microsoft
Smau Napoli 2016 - Michele Aponte, MicrosoftSmau Napoli 2016 - Michele Aponte, Microsoft
Smau Napoli 2016 - Michele Aponte, MicrosoftSMAU
 
Italian C++ MeetUp - 24/10/2015
Italian C++ MeetUp - 24/10/2015Italian C++ MeetUp - 24/10/2015
Italian C++ MeetUp - 24/10/2015Gaetano Paternò
 
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 eventiFondazione Mondo Digitale
 
Android - Programmazione Avanzata
Android -  Programmazione AvanzataAndroid -  Programmazione Avanzata
Android - Programmazione AvanzataStefano Sanna
 
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...Marco Parenzan
 
Programmazione mobile: ANDROID
Programmazione mobile: ANDROIDProgrammazione mobile: ANDROID
Programmazione mobile: ANDROIDPaolo Tosato
 

Ähnlich wie Introduction to 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
 
platforms
platformsplatforms
platforms
 
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
 
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 - ...
 
Multi-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache CordovaMulti-Device Hybrid Apps con Visual Studio e Apache Cordova
Multi-Device Hybrid Apps con Visual Studio e Apache Cordova
 
Xamarin Test Cloud
Xamarin Test CloudXamarin Test Cloud
Xamarin Test Cloud
 
Unofficial Xamarin Day DomusDotNet
Unofficial Xamarin Day DomusDotNetUnofficial Xamarin Day DomusDotNet
Unofficial Xamarin Day DomusDotNet
 
Automated UI testing for iOs and Android mobile apps
Automated UI testing for iOs and Android mobile appsAutomated UI testing for iOs and Android mobile apps
Automated UI testing for iOs and Android mobile apps
 
Introduzione alle app Windows Universal
Introduzione alle app Windows UniversalIntroduzione alle app Windows Universal
Introduzione alle app Windows Universal
 
Beacon & Xamarin
Beacon & XamarinBeacon & Xamarin
Beacon & Xamarin
 
XeDotNet - .Net MAUI
XeDotNet - .Net MAUIXeDotNet - .Net MAUI
XeDotNet - .Net MAUI
 
ALM Revolutions - What's new in visual studio ALM 11
ALM Revolutions - What's new in visual studio ALM 11ALM Revolutions - What's new in visual studio ALM 11
ALM Revolutions - What's new in visual studio ALM 11
 
Dal cloud al mobile con tecnologie Google
Dal cloud al mobile con tecnologie GoogleDal cloud al mobile con tecnologie Google
Dal cloud al mobile con tecnologie Google
 
Sviluppare una app mobile net oriented
Sviluppare una app mobile net orientedSviluppare una app mobile net oriented
Sviluppare una app mobile net oriented
 
Smau Napoli 2016 - Michele Aponte, Microsoft
Smau Napoli 2016 - Michele Aponte, MicrosoftSmau Napoli 2016 - Michele Aponte, Microsoft
Smau Napoli 2016 - Michele Aponte, Microsoft
 
Italian C++ MeetUp - 24/10/2015
Italian C++ MeetUp - 24/10/2015Italian C++ MeetUp - 24/10/2015
Italian C++ MeetUp - 24/10/2015
 
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
 
Android - Programmazione Avanzata
Android -  Programmazione AvanzataAndroid -  Programmazione Avanzata
Android - Programmazione Avanzata
 
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...
2014.04.04 Sviluppare applicazioni web (completamente) on line con Visual Stu...
 
Programmazione mobile: ANDROID
Programmazione mobile: ANDROIDProgrammazione mobile: ANDROID
Programmazione mobile: ANDROID
 

Introduction to Xamarin

  • 1. Creare app native su iOS, Android, Mac & Windows in C# Introduzione a Xamarin
  • 2. Chi ha già sentito parlare di Xamarin?
  • 3. Oggi vedremo come potrete usare Xamarin per... realizzare testare monitororare ...le vostre app!
  • 4. Consente di creare app native per iOS, Android, Mac e Windows in Visual Studio e in C#
  • 6. Approccio: “unicuique suum” Build Apps Multiple Times • Codice differente • Strumenti diversi • Richiesti più team • Costoso e lento
  • 7. Approccio: “scrivi una volta, esegui ovunque” • Frammentazione dei browser • Si sviluppo per una piattaforma, le altre vengono di conseguenza: nessuna cura dello stile specifico della piattaforma.
  • 8. Approccio offerto da Xamarin “tradizionale” • Interfaccia Utente nativa • Performance native • Codice condiviso tra le piattaforme • C# & .NET Framework • Supporto completo alle API
  • 9. Con Xamarin.Forms: maggiore condivisione del codice Approccio Xamarin “tradizionale” Shared UI Code Approccio offerto da Xamarin.Forms
  • 11. C# può essere eseguito da 2.5 miliardi di dispositivi. Scrivi tutto in C#
  • 12. Prima release di Xamarin.Mac Lanciato programma Partner 200,000 Developers Xamarin fondato Prima release di Xamarin.Android Xamarin.iOS lanciato (inizialmente noto come MonoTouch) Ximian fondato Oltre un decennio di esperienza e sviluppo 2001 2003 2009 2011 2012 2013 Mono rilasciato Ximian acquisito by Novell Xamarin 2.0 Component Store Xamarin Test Cloud Evolve 2013 Microsoft Partnership 500,000 Developers 100+ Partners 100+ Components 2014 // Xamarin 3 2000 SAP Partnership Fire TV Support Salesforce partnership Visionary in Gartner Magic Quadrant Google Glass Support Visual Studio Partner of the Year Android Wear Support Xamarin Evolve 2014 800,000 Developers 200+ Partners 200+ Components
  • 16. .NET + iOS APIs | copertura al 100%
  • 17. .NET Android APIs | copertura al 100%
  • 18. Qualsiasi cosa si possa fare in Objective-C, Swift o Java può essere fatta in C# con Xamarin in Visual Studio
  • 19. Xamarin.iOS sfrutta la compilazione Ahead Of Time (AOT) per produrre i pacchetti ARM per l’Apple App Store. Prestazioni Native Xamarin.Android sfrutta la compilazione Just In Time (JIT) caratteristica del dispositivo Android.
  • 20. Xamarin è sempre aggiornato Release iOS supportate al day-one: iOS 5, iOS 6, iOS 7, iOS 7.1, iOS 8, iOS 9, iOS 10 Supporto a: • Google Glass • Android Wear • Amazon Fire TV • Apple Watch • Tanto altro!
  • 21. Condivisione del codice: sviluppo accelerato! • Riutilizzo del codice fino al 90% • Utilizzo delle stesse librerie di NuGet
  • 22. • 1 solo Assembly • Piattaforme Multiple • Supportano: • Xamarin.Android • Xamarin.iOS • Xamarin.Windows Portable Class Libraries (PCL)
  • 23. NuGet
  • 26. Distribuibili ovunque Le app Xamarin possono esssere distribuite ovunque
  • 27. Xamarin Studio PC o Mac Plugin Visual Studio VS 2010 e superiore Ambienti di Sviluppo
  • 28. Integrazione in Visual Studio Una soluzione sola per: • iOS • Android • Windows Phone • Windows Store Tutti i plugin e le funzioni di Visual Studio: • ReSharper • Team Foundation Server
  • 29. Integrazione in Visual Studio Debugging su: • Emulatori • Dispositivi Integrati nella toolbar: • Stato • Logs • Lista di dispositivi
  • 30. Xamarin Studio • Ottimizzato per lo sviluppo cross-platform • Accedi alle API native con l’autocompletamento • Designer per Android e iOS • Debugging avanzato su emulatore o dispositivo
  • 31. Designer per Xamarin Android • Il migliore designer per Android • Disponibile per • Xamarin Studio • Visual Studio • Crea facilmente l’interfaccia utente tramite drag & drop • Affronta facilmente il problema del rescaling e della frammentazione di Android. • Layout salvati in file XML Android standard
  • 32. Designer per Xamarin iOS • Il primo designer iOS presente in Xamarin Studio e Visual Studio • Simile al designer tradizionale di Visual Studio • Supporta pienamente l’UIKit • Modifica i componenti personalizzati e di terze parti • Modifiche grafiche applicate in tempo reale
  • 33. XAML Previewer per Xamarin Forms • Richiede la versione 2.3 del package di Xamarin.Forms • Consente esclusivamente di “vedere”, non di modificare • Disponibile per iOS/Android
  • 34. Demo
  • 35. Xamarin è gratuito per studenti! (e non solo) http://xamarin.com/student
  • 36. Xamarin con Visual Studio Community Edition http://xamarin.com/download
  • 37. Xamarin e Mono Open Source https://github.com/xamarin
  • 39. Testa la tua app su centinaia di dispositivi reali
  • 40. 3 versioni del SO 19 dispositivi 20 lingue 35 localizzazioni 6 screen sizes 11 version del SO 6 screen configurations 27 screen sizes 39 lingue 57 localizzazioni 15 produttori Più di 18,000 diversi dispositivi Le combinazioni possibili sono tante...
  • 41.
  • 42. Inizia immediatamente Il supporto dedicato di aiuterà ad usare subito Xamarin Test Cloud Centinaia di dispositivi Assicurati che la tua app funzioni correttamente su dispositive fisici Report dettagliati Feedback tecnici automatici che ti consentiranno di capire esattamente dove la tua app ha riscontrato problemi. Test anti-frammentazione Testa automaticamente su centinaia di combinazioni di sistemi operativi, schermo e risoluzioni. Test sulla User Interface Testa interamente la tua app, dall’interfaccia grafica al code-behind. Trova i bug prima che lo facciano i tuoi utenti
  • 43. • Eseguilo direttamente da Visual Studio o Xamarin Studio • L’accesso è reso possibile da un pacchetto NuGet Usare Xamarin Test Cloud – Xamarin UITest
  • 44. Demo
  • 45. Monitoriggio in tempo reale. Traccia crash e eccezioni per farti capire cosa stanno facendo i tuoi utenti per causarli
  • 46. Controlla sempre le tue app • Report immediato di qualsiasi eccezione si verifichi • Disponibile AP per l’integrazione rapida di Xamarin Insights
  • 47. Traccia e controlla • Traccia ogni evento che si verifica nella tua app • Controlla quanto ogni operazione dura all’interno della tua app
  • 48. Sono possibili molte integrazioni Integrazione agevole con una serie di servizi per la risoluzione dei problemi riscontrati.
  • 49. Demo
  • 52. Unrivaled Mobile Development Training – Live online training from Xamarin experts – Lectures and labs – One-on-one with expert Xamarin mobile developers What You’ll Learn • iOS and Android Fundamentals • Mobile App Lifecycle • Native UI and Controls • Cross-platform Architecture • Mobile Best Practices • Secure Backend Integration
  • 53. Scaricate Xamarin oggi: xamarin.com/download
  • 54. Grazie per l’attenzione  Guido Magrin Xamarin Student Partner @GuidoMagrin

Hinweis der Redaktion

  1. Positivo = ottime app realizzate secondo i canoni di ogni piattaforma
  2. Utenti non contenti -> sviluppatori non contenti -> vengono abbandonate le app // limiti a quell che si può implementare Positivo: relativamente rapido e facile
  3. C# + XAML C# + XML C# + XIB Logica dell’app, code behind, condiviso tra tutte le piattaforme
  4. Xamarin ha introdotto di recente una libreria nuova, Xamarin.Forms, che permette la user interface cross platform. Permette di aumentare di molto la produttività, condividere codice ma comunque realizzare l’UI rispettando la piattaforma di appartenenza, e permette l’accesso a tutte le API. Come esattamente usare Xamarin.Forms verrà approfondito nella prossima lezione.
  5. F# is a strongly-typed functional programming language designed to run on .NET. It combines the succinctness, expressivity and composability of type-inferred functional programming, the compile-time safety of strongly-typed code, and the runtime support, libraries, interoperability, tools, and object model of .NET. F# is now available as a programming language to Xamarin users on all of the Xamarin supported platforms: Android, Mac OS X, and iOS.
  6. Se avete mai sviluppato per Windows Phone, questi namespace .NET vi potranno esssere familiari.
  7. Lo stesso avviene quindi per iOS e Android, mentre si usa Xamarin. Tutte le API native di iOS sono state coperte da Xamarin in C#.
  8. E anche in Android tutte le API sono state coperte.
  9. https://guido1993.wordpress.com/2015/02/23/why-should-i-make-my-next-mobile-app-in-xamarin-part1-xamarin-performance/
  10. Grazie alla developer preview di Apple, Xamarin è stata in grado di rilasciare il support fin da subito per queste release di iOS. Google però non offre una developer preview, e quindi bisogna aspettare circa 4-8 settimane per avere una release stabile. E’ importante notare come il supporto a dispositivo come Android Wear e Apple Watch si esprima anche con il debugging da appositi emulatori realizzati da Xamarin.
  11. Si può scrivere tutto il codice C# in un unico assembly e condividerlo tra le piattaforme. Prima della partnership tra Xamarin e Microsoft, le PCL erano limitate solo a Windows Le PCL possono essere aperte indistintamente da Xamarin Studio e Visual Studio
  12. Qui appunto c’è stato il punto di svolta per Xamarin: Potenziamento alle PCL, che abbiamo menzionato prima Supporto a Visual Studio 2013 Offerte speciali per gli utenti MSDN
  13. Compila tutto in APK o IPA, che si possono distribuire ovunque!
  14. Xamarin Studio PC -> Android Mac -> iOS, Android, Mac Visual Studio: iOS, Android Windows
  15. Il plugin supporta Visual Studio 2010, 2012, 2013 e 2015 Supporta le desktop app su Windows: WPF, ASP.NET, Silverlight, WinForms Soluzioni e progetti possono esssere aperti indistintamente in Xamarin Studio e Visual Studio
  16. AGGIORNARE SCREEN
  17. Xamarin Studio su PC consente solamente Android, su Mac Android, iOS e Mac. Xamarin Studio consente di lavorare con Git e altri sistemi di source control.
  18. Specialmente per quanto riguarda Android, il problema della frammentazione è notevole, e questi numeri riguardano solo i principali produttori di Android
  19. Questi sono solo alcuni del tipi di schermi che la sola Samsung produce.
  20. Test Cloud consente quindi effettivamente di testare la propria app su centinaia di dispositivi fisici reali diversi, il che è utile per vedere se sarà compatibile con le diverse versioni di Android e iOS, nonchè con i vari schermi disponibili etc.
  21. Xamarin UITest è un framework che serve appunto a interfacciarsi in C# a Xamarin Test Cloud
  22. grafici e altri controlli particolari
  23. In solo 30 giorni, si può imparare tutto questo!
  24. Xamarin Introduction!