/
00 Cross Platform  Development with Mono 00 Cross Platform  Development with Mono

00 Cross Platform Development with Mono - PowerPoint Presentation

olivia-moreira
olivia-moreira . @olivia-moreira
Follow
395 views
Uploaded On 2018-03-13

00 Cross Platform Development with Mono - PPT Presentation

Connect at http isgdwpteched wp7au Cross Platform Development with Mono Nick Randolph WPH331 Agenda Mobile Landscape Cross platform choices NET Framework and Mono Platform architectures ID: 649775

platform windows demo mono windows platform mono demo microsoft phone specific android studio net mobile development presentation platforms abstraction ios design events

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "00 Cross Platform Development with Mono" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

00

Cross Platform

Development with Mono

Connect at

http

://is.gd/wpteched

#wp7auSlide2

Cross Platform Development with Mono Nick RandolphWPH331Slide3

AgendaMobile LandscapeCross platform choices.NET Framework and MonoPlatform architecturesiOSAndroidWindows Phone / Windows 8Separation of concerns with MVVMSlide4

Mobile LandscapeThree PlatformsGlobal: 90%Australia: 95%Ref: http://www.kantarworldpanel.com/Global/News/Android-maintains-its-European-domination Slide5

Cross Platform ChoicesBuild native for every platformBuild for 1 or 2 platforms eg Instagram: iOS and Android onlyBuild mobile web siteBuild mobile web applicationBuild hybrid application eg PhoneGapBuild for reuse eg MonoSlide6

Application Platform ChoicesUXFeaturesCostNativeWeb SiteWeb AppNative 1 or 2HybridMonoSlide7

iOSiPhone, iPadObjective-CC/C++XCode (Interface Builder)AndroidPhone, SlateJava C/C++

Eclipse (Android designer)Platforms and TechnologiesWindowsWindows Phone, Windows 8XAML/C#C/C++, HTML5Visual Studio (Blend)Slide8

.NET Framework and Mono.NET Abstraction across the underlying platformCode compiled to MSIL with runtime JITWindows Microsoft .NET FXOther platforms MonoSlide9

Mono for iOS and AndroidDerivatives of core Mono projectXamarin MonoDevelop (OSX only) Xcode integration MonoDevelop (OSX or Windows) Visual Studio integration (Windows only) Android SDK integrationSlide10

Windows PhoneNavigationPages Uri based navigation with backstackDesignLayout in XAMLExpression BlendPage LifecycleApplication EventsPage MethodsSlide11

demo Windows PhoneDesign in Expression BlendWire up events/code in Visual StudioSlide12

iOSNavigationViewControllers + ViewsPush new instances onto navigation controllerDesignLayout is stored in nib/xibInterface BuilderLifecycleInitialisation methods (eg awakeFromNib)Methods for page events (eg viewDidAppear)Slide13

demo MonoTouchMonoDevelop + XcodeOverview of Design and Development EnvironmentSlide14

AndroidNavigationActivities + ViewsActivities launched as IntentsDesignLayout is stored in axmlMonoDevelop/VS Integrated DesignerLifecycleActvities eventsSlide15

demo Mono for AndroidVisual Studio + Mono for Android PluginOverview of Design and Development EnvironmentSlide16

Separation of ConcernsVisual v's Logic division (MVVM)View how the content is presentedViewModel what content is being presentedModel how data is stored, and accessed Slide17

demo Windows Phone DataBindingSeparation of design (Blend) from code (Visual Studio)Slide18

NavigationNavigation typically tied to platform implementationViewImplements actual navigation operationViewModel Invoke navigation Need an abstraction (eg INavigator) that permits platform specific implementationsSlide19

demo Navigating between ViewModelsSlide20

Hey, get off my UI ThreadUser Experience is ParamountDon’t do long running operations on UI ThreadBackground operationsCallback when doneAgain, platform specific mechanism for re-joining the UI Thread Need an abstraction (eg IDispatcher) that permits platform specific implementationsSlide21

demo DispatcherSlide22

Device featuresDevices expose similar featuresContacts, Camera, Location….Need platform specific code to access themXamarin.MobileSlide23

Third party componentsMany third party component manufacturersTelerik, Infragistics, DevExpressComponents are platform specific (and should be!!)Need to be able to integrate into mono applicationsNeed to generate bindings to incorporate native componentsSlide24

demo Device Features and Third Party ComponentsXamarin.MobileInfragistics iOS GridSlide25

Ramping up for Windows Phone 8Windows Phone Developer Bloghttp://windowsteamblog.com/windows_phone Slide26

Related ContentWPH331, WPH234, WPH322, WPH323, WPH332, WPH333Exhibition Hall – demo pods

70-599 Pro: Designing and Developing Windows Phone 7 ApplicationsFind Me Later At @btroam #wp7au Slide27

Track Resourceshttp://dev.windowsphone.comhttp://wp.msdeveloper.com.au

http://windowsteamblog.com/windows_phonehttp://wpdownunder.comSlide28

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.