building windows apps jason keicher, technical specialist [email protected]

36
Building Windows Apps Jason Keicher, Technical Specialist [email protected]

Upload: andrea-hoover

Post on 23-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Building Windows AppsJason Keicher, Technical Specialist [email protected]

Page 2: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

AgendaModern App OverviewWPF AsyncWindow Store AppsPortable Class Library

Page 3: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Modern Apps : A technology overview

Page 4: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Connected devicesInternet scale

services Big dataHybrid

infrastructure

The Big 5 modern app technology trends

Identity federation

Page 5: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

On-premiseInfrastructure

Web APIs (REST, ODATA)

IaaS Big Data/DaaS PaaSPrivate cloud

Identity Federation

Connected Device Apps

Unified Management

App development and lifecycle management tools

Page 6: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

The Microsoft Solution

Page 7: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

On-premiseInfrastructure

Web APIs (REST, ODATA)

IaaS Big Data/DaaS PaaSPrivate cloud

Identity Federation

Connected Device Apps

Unified Management

App development and lifecycle management tools

Page 8: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Windows Server and SQL Server Windows Azure

ASP.NET MVC Web API, Entity Framework, Windows Azure Mobile Services

Windows Server and Windows Azure Active Directory

Connected Device Apps

Visual Studio

Systems Center

Page 9: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Windows 8 Technology paths

.NETWinForm

s

.NET/XAML WPF

.NET/XAML

Silverlight

HTML/JSASP.NET

.NETWinForm

s

.NET/XAML WPF

.NET/XAML

Silverlight

HTML/JSASP.NET

HTML/JSWinRT

.NET/XAMLWinRT

C++/XAML/DX

Desktop HTML/BrowserWindows Store Apps

Windows 7

Windows 8

Page 10: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Which technology to use?

.NET / WinForms

Heavy-duty data appsNo UX customizationCan reuse client logic

.NET / XAML

Heavy-duty data appsCompelling UXCan reuse client logic and assets

C++

Maximum performanceHighly interactive UXCan reuse client logic across devices

Productivity

UX customizationPortability

Productivity

UX customizationPortability

Productivity

UX customizationPortability

HTML5

Lower developer productivityStandard based UXFully interoperable across devices

Productivity

UX customizationPortability

NATIV

EW

EB

Page 11: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Visual Studio 2012: Native and web in one tool

Web

Native

Desktopapplications

WindowsStore Apps

Highly interactive web applications

HTML5, CSS3 web sites

Page 12: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

SimplicityNew language featuresStreamlined UISearch across the IDE and tool windowsMulti Monitor Support

Choice between programming for Windows 8 appsWindows 8 Store Applications:

XAML & C#/VBHTML5 & WinJSC++

Visual Studio 2012 and Windows

Page 13: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Windows 8 Technology Paths

.NETWinForm

s

.NET/XAML WPF

.NET/XAML

Silverlight

HTML/JSASP.NET

.NETWinForm

s

.NET/XAML WPF

.NET/XAML

Silverlight

HTML/JSASP.NET

HTML/JSWinRT

.NET/XAMLWinRT

C++/XAML/DX

Desktop HTML/BrowserWindows 8

Windows 7

Windows 8

Page 14: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Your existing investment remains sound

Visual Studio 2012 has a ton of great featuresSolution round-trippingMulti-targetingEnhanced, rich WPF editorSearch across the IDE and tool windowsMulti Monitor Support

.NET framework 4.5 brings new featuresBuilt-in support for asynchronous execution makes it easy to build rich, responsive applications

Desktop Applications

Page 15: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Desktop WPF and async

Demo

Page 16: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

New designers for all Windows Store apps

Shared architecture with Blend

Language projections over WinRT meansHTML and JavaScriptVisual Basic and XAMLVisual C++ and XAMLVisual C# and XAMLVisual C++/DirectX

Building Windows Store Apps

Page 17: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Simplified Windows Platform for HTMLSingle consistent platformSingle HTML5 DOCTYPE

Web standards, plug-in free

Full-screen and docked apps

Full access to Windows Runtime (WinRT)

Page 18: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Library for building Windows Store apps using JavaScript

Make your apps ‘look and feel’ greatMatches Windows Store Apps style (controls, touch-control, scaling, etc.)

Build your apps fast and with high qualityWhen you’re already familiar with web technologies Modern patterns for reliable appsUse interactive VS design tools

Windows Library for JavaScript (WinJS)

Page 19: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Enables to inspect memory usage in Store Apps

Dianose potential leaks

Take snapshots while profiling

Memory Profiling for JavaScript Apps

Page 20: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

WinJS and Windows Store Apps

Demo

Page 21: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Leverage existing investment in VB/C# codeMuch of your existing code can be ported into the new worldAll of your experience is very useful!

Leverage existing investment in XAML codeMost of your experience with Silverlight & WPF is directly applicable

Data binding, Users Controls, etc.New frameworks and components, but many familiar old favorites

<Grid />, <StackPanel/>, <Button />DependencyProperty and related.

VB/C# & XAML—Windows Store Apps

Page 22: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Portable Libraries

One DLL, multiple platformsCode against API subset common to selected targets

Select versionsBack to .NET 4, Silverlight 4, or Windows Phone 7.0

Page 23: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

XAML and VB with a C# Portable Library

Demo

Page 24: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Choose your VS project type / templateThe standard project types all support slightly different navigation models…Save time and learn some principles and best practices!!

Think about navigationAll Windows Store Apps support a page-based navigation modelThey can be Activated and Deactivated

Think about layout and orientationResolutionPortrait / LandscapeRotation

XAML Windows Store Apps

Page 25: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

XAML C# Windows Store App

Demo

Page 26: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Contracts allow apps to interoperate…With other apps

e.g. sharingWith system services

e.g. Webcam, PlayTo media device

Using Contracts

Page 27: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

It’s a declaration about access requirements to any serviceDeclared in XML App manifest fileEditor & configuration support in Visual Studio 2012

Users can make decisions based on declarations

The runtime prevents your app from using capabilities it hasn’t declared

What is a Capability?

Page 28: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Your app needs to work within the Windows 8 application modelIt may be deactivated, and reactivatedSo it may need to preserve its state

It may be activated through a contracte.g. through the Search UI

Activation

Page 29: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Search Integration

Demo

Page 30: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Building Windows AppsYour existing applications are alive and wellNew features like async can make them better

Windows Store App development your wayXAML + VB/C#HTML + JavaScriptC++/DirectX

Windows Store AppsExciting changes with familiar development experience

Visual Studio 2012 provides the tools you needGet started now building great applications to sell on the Windows Store.

Page 31: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

MCSDMicrosoft Certified Solutions Developer

www.netcomlearning.com

Page 32: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

MCSD: Windows Store Apps

www.netcomlearning.com

Page 33: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

Upgrade Path

www.netcomlearning.com

Page 34: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

MCSD: Web Applications

www.netcomlearning.com

Page 35: Building Windows Apps Jason Keicher, Technical Specialist Jason.Keicher@Microsoft.com

MCSD Training Schedules

MCSD: Windows Store Apps Using HTML5• August 26th in NYC, DC & Live Online

MCSD: Windows Store Apps Using C#• September 23rd in NYC, DC & Live Online

MCSD: Web Applications• June 15th in Las Vegas & Live Online (All Inclusive Boot Camp)• July 22nd in NYC, DC & Live Online

www.netcomlearning.com

*Free Second Shot Exam expires May 31st, 2013