2. XAMARIN BUILD ANNOUNCEMENTS
• MICROSOFT PURCHASED XAMARIN
• XAMARIN FREE FOR EVERYONE
• VISUAL STUDIO ON WINDOWS
• XAMARIN STUDIO ON MAC
• XAMARIN INSIGHTS MOVING TO HOCKEYAPP
3. WHAT IS XAMARIN FORMS
• CROSS PLATFORM WAY TO CREATE APPS
• BRINGS XAML TO IOS AND ANDROID
• CODING DONE IN A PCL
• XAML RENDERS IN NATIVE CONTROLS ON PLATFORM
• XAML IS DIFFERENT THAN WPF XAML
4. WHAT IS MVVM
• MVVM STANDS FOR MODEL VIEW VIEWMODEL
• SEPARATES THE VIEW FROM THE DATA
• MAKES IT EASIER TO UNIT TEST
5. MVVM FRAMEWORKS FOR XAMARIN
• MVVMCROSS GREAT FOR CREATING CROSS PLATFORM APPS DOES NOT NEED
XAMARIN FORMS. KIND OF HEAVY WEIGHT
• MVVMLIGHT CAN CREATE CROSS PLATFORM APPS DOES NOT NEED XAMARIN
FORMS
• FRESHMVVM VERY LIGHT WEIGHT. REQUIRES XAMARIN FORMS
• ROCK MVVM NEEDS XAMARIN FORMS
6. ADD FRESHMVVM TO PROJECT
• CREATE NEW XAMARIN FORMS PROJECT
• ADD FRESHMVVM NUGET PACKAGE
• NOTE FRESHMVVM INCLUDES FRESHIOC (TINYOIC)
• ADD NEW FORM
9. SETUP APPLICATION FOR MVVMCROSS
• MAINPAGE =
FRESHMVVM.FRESHPAGEMODELRESOLVER.RESOLVEPAGEMODEL<FIRSTPAGEMOD
EL>();
10. NAVIGATION
• FRESHMVVM HAS SEVERAL NAVIGATION MODELS
• NEED TO USE NAVIAGATION CONTAINER FOR IT TO WORK
• VAR FIRSTPAGE=
FRESHMVVM.FRESHPAGEMODELRESOLVER.RESOLVEPAGEMODEL<FIRSTPAGEMOD
EL>();
• VAR NAVCONATINER = NEW
FRESHMVVM.FRESHNAVIGATIONCONTAINER(FIRSTPAGE);
• MAINPAGE = NAVCONATINER;
11. DEPENDENCY INJECTION
• USES FRESHIOC BY DEFAULT
• CAN USE OWN CONTAINER
• FRESHIOC.CONTAINER.REGISTER<ITEXTSERVICE, TEXTSERVICE>();
• CAN INJECT INTO THE CONSTRUCTOR
12. RESOURCES
• MICHAEL RIDLAND BLOG HTTP://WWW.MICHAELRIDLAND.COM/
• PROJECT ON GITHUB
HTTP://WWW.MICHAELRIDLAND.COM/XAMARIN/FRESHMVVM-QUICK-START-
GUIDE/
• LINK TO SOME VIDEOS ON BOTTOM OF PAGE
• VB2AE@LIVE.COM