Download presentation
Presentation is loading. Please wait.
Published byEric Dixon Modified over 9 years ago
1
Developing Cross-Platform Applications with Visual Studio 2015
Sergii Baidachnyi Principal Technical Evangelist Microsoft Canada
2
App Development Strategies
Visual Studio 4/22/2017 App Development Strategies Native platform technologies Full access to device capabilities Native performance Highly customized per device Limited access to device capabilities Web performance Device-independent Easier management Web technologies © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, 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.
3
Developer tools Rich experiences Breadth of devices Desktop apps – WPF
4/22/2017 Developer tools Win32 C++ Desktop apps – WPF Universal Windows Apps .NET Visual C++ for cross-plat Rich experiences Breadth of devices Visual Studio tools for Apache Cordova HTML Browser-based applications © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, 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.
4
Visual Studio 2015
5
Xamarin
6
.NET and Xamarin Shared client app C# logic
4/22/2017 .NET and Xamarin Share app logic across platforms Native apps for Windows, iOS and Android devices using .NET Most productive and powerful platform for creating native applications Maximize code reuse with Universal Projects & Portable Class Libraries 100% APIs exposed Everything you can do in xCode or ADT you can do with Visual Studio z C# + XIB C# + AXML C# + XAML Native UI Shared client app C# logic © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, 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.
7
Windows APIs Microsoft.Phone Windows.Storage Microsoft.Devices
Microsoft.Networking Windows.Storage Windows.Foundation Microsoft.Devices System.Net System System.IO System.Linq System.Xml System.Data System.Windows System.Numerics System.Core System.ServiceModel
8
iOS – 100% API Coverage MapKit UIKit iBeacon CoreGraphics CoreMotion
Build 2015 4/22/2017 5:37 PM iOS – 100% API Coverage MapKit UIKit iBeacon CoreGraphics CoreMotion System.Net System System.IO System.Linq System.Xml System.Data System.Windows System.Numerics System.Core System.ServiceModel © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
9
Android – 100% API Coverage
Build 2015 4/22/2017 5:37 PM Android – 100% API Coverage Text-to-speech ActionBar Printing Framework Renderscript NFC System.Net System System.IO System.Linq System.Xml System.Data System.Windows System.Numerics System.Core System.ServiceModel © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
10
4/22/2017 Anything you can do in Objective-C, Swift, or Java can be done in C# and Visual Studio with Xamarin. © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, 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.
11
UI design Create UI with drag and drop simplicity
Target multiple screen sizes, resolutions, and OS platform and versions Layouts saved in native resource formats World’s best Android designer available in Visual Studio 4/22/2017 UI design iOS app designer in Visual Studio Android app designer in Visual Studio © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, 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.
12
Native compilation, native performance
Xamarin.iOS does full Ahead Of Time (AOT) compilation to produce an ARM binary suitable for Apple’s App Store Xamarin.Android takes advantage of Just In Time (JIT) compilation on the Android device
13
Xamarin + Xamarin.Forms
Shared C# Backend Shared UI Code iOS C# UI Windows C# UI Android C# UI Shared C# Backend Traditional Xamarin Approach With Xamarin.Forms: More code-sharing, all native
14
Visual Studio Emulator for Android
Fast, x86 image built from AOSP Runs on Hyper-V Comes with Visual Studio Speaks ADB Native capabilities and sensors Zoom, Rotation, Network, Location, Accelerometer, Battery, SD Card, Camera, Audio playback, Keyboard Input, Configurations
15
Apache Cordova
16
<webview> Your JavaScript App
What is Cordova? Native Wrapper Open source framework Hosted webview in iOS and Android platforms, WWAHost in Windows platform Single, shared HTML, JavaScript, and CSS codebase deployed to all targets <webview> Your JavaScript App
17
<webview> Your JavaScript App
What is Cordova? Native Wrapper Open source framework Hosted webview in iOS and Android platforms, WWAHost in Windows platform Single, shared HTML, JavaScript, and CSS codebase deployed to all targets Plugins provide a common JavaScript API to access device capabilities <webview> Your JavaScript App Cordova Plugin JS API
18
Create Cordova Project
Build 2015 4/22/2017 5:37 PM How does Cordova work? Cordova Project HTML, CSS, JS Assets Platform code Plugin code Configuration Visual Studio Project HTML, CSS, JS, assets Windows-specific runtime Windows-specific plugin code Windows-specific configuration Native Windows App Create Cordova Project Build Cordova Project XCode Project HTML, CSS, JS, assets iOS-specific runtime iOS-specific plugin code iOS-specific configuration Native iOS App Android Project HTML, CSS, JS, assets Android-specific runtime Android-specific plugin code Android-specific configuration Native Android App © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
19
Tools for Apache Cordova
CSS | HTML JavaScript | TypeScript Hybrid-HTML apps Natural path for web developers targeting devices Black Box Cordova tooling in Visual Studio Productivity of Visual Studio for hybrid apps Scale to complex Enterprise apps through optional TypeScript support End-to-end development workflow included for Windows, iOS and Android Flexibility to use any JavaScript framework
20
Cross-Platform in C++
21
Cross-platform mobile apps in C++
Easy installation One C++ IDE for cross-platform dev Share and reuse cross-platform code State of the Art code-editing features Powerful debugging experience Fast emulation
22
C++ the common denominator
Build 2015 4/22/2017 5:37 PM C++ the common denominator Benefits Full native experience Total access to the device as provided by the SDK Code Reuse Performance Security Windows iOS Android C#, CX ObjC, Swift Java C++ C++ C++ © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
23
C++ the common denominator
Build 2015 4/22/2017 5:37 PM C++ the common denominator .appx .apk .ipa Shared C++ backend is compiled as: XAML .appx .apk .ipa C#, C++/Cx Java Dex / ART ObjC Swift Dynamic Link Library (.dll) Static Library (.lib) Dynamic shared library (.so) Static library (.a) XML Cocoa Touch C# Cx Java Pinvoke C++ Wrapper Java/C++ JNI Wrappers ObjC Wrapper Shared C++ Backend DropBox © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
24
NDK Build, Make files, Gradle, Ant
4/22/2017 5:37 PM Development tools for C++ cross-platform Compilers Visual C++ Compiler GCC Clang/LLVM Build Engine MSBuild, Nmake NDK Build, Make files, Gradle, Ant Xcode Build IDE(s) Visual Studio Eclipse CDT Xcode Host Platform Windows 8/8.1/10 MacOS X, Linux, Windows Mac OS X © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
25
Challenges with C++ cross-platform mobile
Build 2015 4/22/2017 5:37 PM Challenges with C++ cross-platform mobile Multiple installation experiences Maintaining multiple build tools and build systems Debugging experience is not ideal Multiple C++ IDE(s) © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
26
Visual Studio 2015 Visual Studio 2015 Easy installation
Build 2015 4/22/2017 5:37 PM Visual Studio 2015 Visual Studio 2015 Easy installation One C++ IDE for your cross-platform needs Share and reuse cross-platform code State of the Art code-editing features Powerful debugging experience Fast emulation © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
27
Introducing!, Visual C++ 2015 (iOS)
Build 2015 4/22/2017 5:37 PM Introducing!, Visual C (iOS) Develop iOS applications using Visual C++ Easily edit, build and debug your iOS code Share and reuse your cross-platform code Productivity of Visual Studio now available for iOS © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
28
Build 2015 4/22/2017 5:37 PM Xamarin and Visual C Xamarin Android native (C/C++) users will now be able to: Build Android native Libraries (.so and .a) using Visual Studio Debug their Android native using a powerful debugging experience © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
29
Unity
30
Visual Studio Tools for Unity
Build 2015 4/22/2017 5:37 PM Visual Studio Tools for Unity Its Free Use Visual Studio to edit & debug code Integrates VS with Unity Provides Shader syntax highlighting Code templates Intellisense Full debugging support VSTU © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
31
Diagnostics Visual Studio Graphics Debugger
Build 2015 4/22/2017 5:37 PM Diagnostics Visual Studio Graphics Debugger Now with full Unity support Supports Single or multi frame capture Frame level debugging Memory profiling Visual Studio 2013 CTP5 and above © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.