Slide 1

Slide 1 text

May 3-5, 2015 | Boston, Massachusetts USA May 3-5, 2015 | Boston, Massachusetts USA Modern .NET Apps Workshop Michael Crump (@mbcrump) | Sam Basu (@samidip)

Slide 2

Slide 2 text

May 3-5, 2015 | Boston, Massachusetts USA Roadmap • All things Visual Studio & C# • VS 15 New Features, C# 6, JustCode • WPF and WinForms • Modern Apps with UI for WPF and WinForms • Mobile Apps with Visual Studio • Mobile Web, Telerik AppBuilder, Ui for Xamarin

Slide 3

Slide 3 text

May 3-5, 2015 | Boston, Massachusetts USA May 3-5, 2015 | Boston, Massachusetts USA Visual Studio 2015 RC

Slide 4

Slide 4 text

May 3-5, 2015 | Boston, Massachusetts USA Visual Studio 2015 • Features: • Custom Window Layouts • Better Code Editor • Shared Project • IntelliSense for Bower and NPM • Debug Lambdas • Many more…

Slide 5

Slide 5 text

May 3-5, 2015 | Boston, Massachusetts USA C# 6.0 • Features: • Static Using Syntax • Auto-Property Initializers • Dictionary Initializers • Exception Filters and Aync in a Catch and Finally Block • nameOf Expressions • String Interpolation • Many more…

Slide 6

Slide 6 text

May 3-5, 2015 | Boston, Massachusetts USA C# 6.0 + Roslyn (tryroslyn.azurewebsites.net)

Slide 7

Slide 7 text

May 3-5, 2015 | Boston, Massachusetts USA JustCode for Visual Studio 2015 - Preview • JustCode • New Version Available • Built from the Ground up, on top of Roslyn

Slide 8

Slide 8 text

May 3-5, 2015 | Boston, Massachusetts USA JustCode for Visual Studio 2015 - Preview • JustCode (Popular Features) • Go to Type • Go to Member • Go to Symbol • Visual Aid • Debug Decompiled Code

Slide 9

Slide 9 text

May 3-5, 2015 | Boston, Massachusetts USA May 3-5, 2015 | Boston, Massachusetts USA Taking a Look at the Desktop

Slide 10

Slide 10 text

May 3-5, 2015 | Boston, Massachusetts USA While everyone is getting ready for mobile…

Slide 11

Slide 11 text

May 3-5, 2015 | Boston, Massachusetts USA We Still have a Need for this!

Slide 12

Slide 12 text

May 3-5, 2015 | Boston, Massachusetts USA WPF Improvements • IntelliSense for Data Binding/Resources • Commenting in XAML • Smart Tag Refactoring • Code Snippets

Slide 13

Slide 13 text

May 3-5, 2015 | Boston, Massachusetts USA WPF + .NET 4.5.1 • Debugger Support for x64-bit edit and continue • Async-aware debugging in Call Stacks and Tasks Windows • .NET Managed Memory Analyzer

Slide 14

Slide 14 text

May 3-5, 2015 | Boston, Massachusetts USA WPF – Performance and Diagnostics • CPU Usage tool with support for WPF (VS 13 Update 2) • Memory Usage Analyzer now supports WPF and Win32 (VS 13 Update 3)

Slide 15

Slide 15 text

May 3-5, 2015 | Boston, Massachusetts USA Telerik Continues to Invest • Touch Enabled Themes • RadialMenu • Document Processing • MS Inspired Templates (Work, Excel and Office)

Slide 16

Slide 16 text

May 3-5, 2015 | Boston, Massachusetts USA GridView with no Theme Applied

Slide 17

Slide 17 text

May 3-5, 2015 | Boston, Massachusetts USA GridView with Windows8Touch Theme

Slide 18

Slide 18 text

May 3-5, 2015 | Boston, Massachusetts USA RadialMenu

Slide 19

Slide 19 text

May 3-5, 2015 | Boston, Massachusetts USA Document Processing

Slide 20

Slide 20 text

May 3-5, 2015 | Boston, Massachusetts USA New Visual Studio Templates

Slide 21

Slide 21 text

May 3-5, 2015 | Boston, Massachusetts USA WinForms • MS is not Actively Developing for WinForms anymore. • High-DPI support for various Windows Forms was introduced in .NET 4.5. • Nothing Announced at Build 2015.

Slide 22

Slide 22 text

May 3-5, 2015 | Boston, Massachusetts USA Telerik Continues to Invest • RadPanorama • Diagram • Improvements in Charts (6 new chart types) • MS Inspired Templates (Work, Excel and Office)

Slide 23

Slide 23 text

May 3-5, 2015 | Boston, Massachusetts USA WinForms - RadPanorama

Slide 24

Slide 24 text

May 3-5, 2015 | Boston, Massachusetts USA Resources for the Workshop • http://bit.ly/ModernAppsWS

Slide 25

Slide 25 text

May 3-5, 2015 | Boston, Massachusetts USA May 3-5, 2015 | Boston, Massachusetts USA Building Mobile Apps with Visual Studio

Slide 26

Slide 26 text

May 3-5, 2015 | Boston, Massachusetts USA 3 Major Platforms

Slide 27

Slide 27 text

May 3-5, 2015 | Boston, Massachusetts USA

Slide 28

Slide 28 text

May 3-5, 2015 | Boston, Massachusetts USA This Leads us to Several Questions • What are my options for developing mobile apps in general? • How can I develop for iOS without a Mac? • How can I develop for Android or iOS without learning Swift or Java? • How can I develop for all three using Visual Studio?

Slide 29

Slide 29 text

May 3-5, 2015 | Boston, Massachusetts USA This Leads us to Several Options • Mobile Web • Hybrid Apps • Native Apps • Cross-Platform Native Apps

Slide 30

Slide 30 text

May 3-5, 2015 | Boston, Massachusetts USA Mobile Web - Pros • Multiple Platforms – even BlackBerry!  • Use HTML5, JS, CSS3 • Development cost is usually low • You can reuse your user interface and core logic • You don’t have to get approval from any app store

Slide 31

Slide 31 text

May 3-5, 2015 | Boston, Massachusetts USA Mobile Web - Cons • Limited APIs • Limited Graphics • Limited to the Capabilities of the Mobile Browser • No Store Discoverability

Slide 32

Slide 32 text

May 3-5, 2015 | Boston, Massachusetts USA Mobile Web – Responsive Web Design

Slide 33

Slide 33 text

May 3-5, 2015 | Boston, Massachusetts USA Mobile Web – Responsive Web Design

Slide 34

Slide 34 text

May 3-5, 2015 | Boston, Massachusetts USA Mobile Web – Responsive Design

Slide 35

Slide 35 text

May 3-5, 2015 | Boston, Massachusetts USA Mobile Web – Mobile Optimized Web Pages

Slide 36

Slide 36 text

May 3-5, 2015 | Boston, Massachusetts USA Mobile Web – Mobile Optimized Web Pages

Slide 37

Slide 37 text

May 3-5, 2015 | Boston, Massachusetts USA Telerik Offers • Kendo UI Mobile • Responsive ASP.NET AJAX Controls • Page Layout

Slide 38

Slide 38 text

May 3-5, 2015 | Boston, Massachusetts USA Hybrid App - Pros • Multiple Platforms • Use HTML5, JS, CSS3 • Development cost is usually low • You can reuse your user interface and core logic

Slide 39

Slide 39 text

May 3-5, 2015 | Boston, Massachusetts USA Hybrid App - Cons • Native APIs – what is provided by Cordova and Plug- ins built by the community • Moderate Graphics • Store Discoverability

Slide 40

Slide 40 text

May 3-5, 2015 | Boston, Massachusetts USA Hybrid Apps w/ Telerik AppBuilder

Slide 41

Slide 41 text

May 3-5, 2015 | Boston, Massachusetts USA Hybrid Apps w/ Telerik AppBuilder

Slide 42

Slide 42 text

May 3-5, 2015 | Boston, Massachusetts USA Hybrid Apps w/ Telerik AppBuilder

Slide 43

Slide 43 text

May 3-5, 2015 | Boston, Massachusetts USA May 3-5, 2015 | Boston, Massachusetts USA demo

Slide 44

Slide 44 text

May 3-5, 2015 | Boston, Massachusetts USA Native App - Pros • Access to all Native APIs • Advanced Graphics • Speed • App Store Distribution

Slide 45

Slide 45 text

May 3-5, 2015 | Boston, Massachusetts USA Native App - Cons • Single Platform • High Development Cost

Slide 46

Slide 46 text

May 3-5, 2015 | Boston, Massachusetts USA Native Apps • MS – XAML / C# • iOS – Swift / Obj-C • Android - Java

Slide 47

Slide 47 text

May 3-5, 2015 | Boston, Massachusetts USA Cross-Platform Native Apps Write in one language and it translates your code into apps that run across platforms.

Slide 48

Slide 48 text

May 3-5, 2015 | Boston, Massachusetts USA Cross-Platform Native Apps • One C# Project – Three Native Mobile Apps

Slide 49

Slide 49 text

May 3-5, 2015 | Boston, Massachusetts USA Native Apps with Xamarin - iOS

Slide 50

Slide 50 text

May 3-5, 2015 | Boston, Massachusetts USA Native Apps with Xamarin - Android

Slide 51

Slide 51 text

May 3-5, 2015 | Boston, Massachusetts USA Native Apps with Xamarin - Android

Slide 52

Slide 52 text

May 3-5, 2015 | Boston, Massachusetts USA Chart (Xamarin.Forms and Wrappers)

Slide 53

Slide 53 text

May 3-5, 2015 | Boston, Massachusetts USA The Full Breakdown

Slide 54

Slide 54 text

May 3-5, 2015 | Boston, Massachusetts USA NativeScript

Slide 55

Slide 55 text

May 3-5, 2015 | Boston, Massachusetts USA May 3-5, 2015 | Boston, Massachusetts USA demo

Slide 56

Slide 56 text

May 3-5, 2015 | Boston, Massachusetts USA Wrap-Up • What are you trying to accomplish? • Do you need a high performing app? • Do you need store discoverability? • These are just a few questions that your team should discuss before moving forward. • Choose the right technology for your team. • Strong web teams can jump straight into Mobile Web or Hybrid. • C# Skillset can be reused by Xamarin