SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Downloaden Sie, um offline zu lesen
Evgeny Zborovsky
https://www.linkedin.com/in/evsky/
https://twitter.com/ezborovsky
History
- Xamarin Founded in 2011
- Acquired by Microsoft in February 2016
- .NET Core version 1.0 June 2016
- Visual studio for Mac (Preview) November 2016
Why Xamarin?
- Open Source (Free)
- Owned by Microsoft
- Truly Native
- Write once, run anywhere
How does it work?
Shared BL C#
Android C# UI iOS C# UI
Xamarin Native (Classic)
Shared BL C#
Android C# iOS C#
Xamarin.Forms
Shared UI XAML (C#)
OR
Documentation: Understanding the Xamarin Mobile Platform
Source: https://github.com/xamarin/dev-days-labs/
When to use Xamarin Native?
- Apps with interactions that require native behavior
- Apps that use many platform-specific APIs
- Apps where custom UI is more important than code sharing
Documentation: Which Xamarin approach is best for your app?
When to use Xamarin.Forms?
- Apps that require little platform-specific functionality
- Apps where code sharing is more important than custom UI
- Developers comfortable with XAML
Documentation: Which Xamarin approach is best for your app?
How to share the code?
- Shared Project
- PCL (Portable Class Library)
- .NET Standard Library
Documentation: Sharing Code Options
Where to start?
- Windows:
- Visual Studio 2017
- Xamarin Studio
- Mac:
- Visual Studio for Mac
- Xamarin Studio
Documentation: Getting Started
Does Xamarin.Forms really works?
- No UI preview Xamarin Live Player
- Poor XAML intellisense
- Xamarin bugs
- Android / iOS bugs
- Not stable IDE
Good practices
- SOLID
- XAMLC
- MVVM
- Use MessagingCenter with care
- Don’t forget that you are on mobile
- Up to you how to write UI code in C# or XAML
- Contribute!
Additional resources
- Official resource: https://developer.xamarin.com/
- Channel 9: https://xamarinshow.com
- Podcast: http://www.xamarinpodcast.com/
- MVA Xamarin Challenge available till 17/05/17
- Follow James Montemagno | Blog: http://motzcod.es/
- Github: https://github.com/xamarin/Xamarin.Forms
- My blog: https://smellyc0de.blogspot.com
- Content Aggregator: Planet Xamarin
Questions?
Thank you!

Weitere ähnliche Inhalte

Mehr von MobileMonday Estonia

Mehr von MobileMonday Estonia (20)

Scientists meet Entrepreneurs - AI & Machine Learning, Tambet Matiisen, Unive...
Scientists meet Entrepreneurs - AI & Machine Learning, Tambet Matiisen, Unive...Scientists meet Entrepreneurs - AI & Machine Learning, Tambet Matiisen, Unive...
Scientists meet Entrepreneurs - AI & Machine Learning, Tambet Matiisen, Unive...
 
Scientists meet Entrepreneurs - AI & Machine Learning, Dima Fishman, Universi...
Scientists meet Entrepreneurs - AI & Machine Learning, Dima Fishman, Universi...Scientists meet Entrepreneurs - AI & Machine Learning, Dima Fishman, Universi...
Scientists meet Entrepreneurs - AI & Machine Learning, Dima Fishman, Universi...
 
Space Edition, Sven Lilla, ESA BIC
Space Edition, Sven Lilla, ESA BICSpace Edition, Sven Lilla, ESA BIC
Space Edition, Sven Lilla, ESA BIC
 
Space Edition, Kadri Bussov, EST Cube
Space Edition, Kadri Bussov, EST CubeSpace Edition, Kadri Bussov, EST Cube
Space Edition, Kadri Bussov, EST Cube
 
Space Edition, Kalev Koppel, KappaZetta
Space Edition, Kalev Koppel, KappaZettaSpace Edition, Kalev Koppel, KappaZetta
Space Edition, Kalev Koppel, KappaZetta
 
Space Edition, Dr. Ali Nadir Arslan
Space Edition, Dr. Ali Nadir Arslan Space Edition, Dr. Ali Nadir Arslan
Space Edition, Dr. Ali Nadir Arslan
 
Product Marketing, Kair Käsper, Pipedrive
Product Marketing, Kair Käsper, PipedriveProduct Marketing, Kair Käsper, Pipedrive
Product Marketing, Kair Käsper, Pipedrive
 
Product Marketing, Marelle Ellen
Product Marketing, Marelle EllenProduct Marketing, Marelle Ellen
Product Marketing, Marelle Ellen
 
Product Marketing, Mattias Liivak, Fortumo
Product Marketing, Mattias Liivak, FortumoProduct Marketing, Mattias Liivak, Fortumo
Product Marketing, Mattias Liivak, Fortumo
 
What Does it take to Develop Kickass Products?, Laura Noodapera
What Does it take to Develop Kickass Products?, Laura NoodaperaWhat Does it take to Develop Kickass Products?, Laura Noodapera
What Does it take to Develop Kickass Products?, Laura Noodapera
 
What Does it take to Develop Kickass Products?, Britt Maasalu
What Does it take to Develop Kickass Products?, Britt MaasaluWhat Does it take to Develop Kickass Products?, Britt Maasalu
What Does it take to Develop Kickass Products?, Britt Maasalu
 
Meeting Female Entrepreneurs in Tech, Triinu Sirge
Meeting Female Entrepreneurs in Tech, Triinu SirgeMeeting Female Entrepreneurs in Tech, Triinu Sirge
Meeting Female Entrepreneurs in Tech, Triinu Sirge
 
Meeting Female Entrepreneurs in Tech, Triin Kask
Meeting Female Entrepreneurs in Tech, Triin KaskMeeting Female Entrepreneurs in Tech, Triin Kask
Meeting Female Entrepreneurs in Tech, Triin Kask
 
Meeting Female Entrepreneurs in Tech, Seren Eilmann
Meeting Female Entrepreneurs in Tech, Seren EilmannMeeting Female Entrepreneurs in Tech, Seren Eilmann
Meeting Female Entrepreneurs in Tech, Seren Eilmann
 
Meeting Female Entrepreneurs in Tech, Kei Karlson
Meeting Female Entrepreneurs in Tech, Kei KarlsonMeeting Female Entrepreneurs in Tech, Kei Karlson
Meeting Female Entrepreneurs in Tech, Kei Karlson
 
Messente @MobileMonday Estonia
Messente @MobileMonday EstoniaMessente @MobileMonday Estonia
Messente @MobileMonday Estonia
 
Qminder @ MobileMonday Estonia
Qminder @ MobileMonday EstoniaQminder @ MobileMonday Estonia
Qminder @ MobileMonday Estonia
 
Founders Story - Anatomy Next
Founders Story - Anatomy NextFounders Story - Anatomy Next
Founders Story - Anatomy Next
 
"iOS: MVVMC" - Aleksandr Nikolajev from Mooncascade
"iOS: MVVMC" - Aleksandr Nikolajev from Mooncascade"iOS: MVVMC" - Aleksandr Nikolajev from Mooncascade
"iOS: MVVMC" - Aleksandr Nikolajev from Mooncascade
 
Product Management @ Weekdone
Product Management @ WeekdoneProduct Management @ Weekdone
Product Management @ Weekdone
 

Kürzlich hochgeladen

AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Kürzlich hochgeladen (20)

Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 

"Xamarin" - Evgeny Zborovsky from Mooncascade

  • 2. History - Xamarin Founded in 2011 - Acquired by Microsoft in February 2016 - .NET Core version 1.0 June 2016 - Visual studio for Mac (Preview) November 2016
  • 3. Why Xamarin? - Open Source (Free) - Owned by Microsoft - Truly Native - Write once, run anywhere
  • 4. How does it work? Shared BL C# Android C# UI iOS C# UI Xamarin Native (Classic) Shared BL C# Android C# iOS C# Xamarin.Forms Shared UI XAML (C#) OR Documentation: Understanding the Xamarin Mobile Platform
  • 6. When to use Xamarin Native? - Apps with interactions that require native behavior - Apps that use many platform-specific APIs - Apps where custom UI is more important than code sharing Documentation: Which Xamarin approach is best for your app?
  • 7. When to use Xamarin.Forms? - Apps that require little platform-specific functionality - Apps where code sharing is more important than custom UI - Developers comfortable with XAML Documentation: Which Xamarin approach is best for your app?
  • 8. How to share the code? - Shared Project - PCL (Portable Class Library) - .NET Standard Library Documentation: Sharing Code Options
  • 9. Where to start? - Windows: - Visual Studio 2017 - Xamarin Studio - Mac: - Visual Studio for Mac - Xamarin Studio Documentation: Getting Started
  • 10. Does Xamarin.Forms really works? - No UI preview Xamarin Live Player - Poor XAML intellisense - Xamarin bugs - Android / iOS bugs - Not stable IDE
  • 11. Good practices - SOLID - XAMLC - MVVM - Use MessagingCenter with care - Don’t forget that you are on mobile - Up to you how to write UI code in C# or XAML - Contribute!
  • 12. Additional resources - Official resource: https://developer.xamarin.com/ - Channel 9: https://xamarinshow.com - Podcast: http://www.xamarinpodcast.com/ - MVA Xamarin Challenge available till 17/05/17 - Follow James Montemagno | Blog: http://motzcod.es/ - Github: https://github.com/xamarin/Xamarin.Forms - My blog: https://smellyc0de.blogspot.com - Content Aggregator: Planet Xamarin