windows 8 hot or not

34
Windows 8 Hot or Not Piotr Włodek

Upload: pwlodek

Post on 17-May-2015

2.819 views

Category:

Technology


2 download

DESCRIPTION

Windows 8 as seen by developer. Overview of Metro style app development.

TRANSCRIPT

Page 1: Windows 8 Hot or Not

Windows 8Hot or Not

Piotr Włodek

Page 2: Windows 8 Hot or Not

Agenda

MetroCharm

sContract

s WinRT

App Execution Environment

Motion Summary

Page 3: Windows 8 Hot or Not

Metro UI

Page 4: Windows 8 Hot or Not

Metro Design

Page 5: Windows 8 Hot or Not

Metro Design

• Typography• Motion• Content not Chrome

Page 6: Windows 8 Hot or Not

Photoshop METRO’ified

Page 7: Windows 8 Hot or Not

• Tile notification– Square or wide– Badge (number or glypth)

• Toast notification– Standard toast, 7 sec (e-mail, IM, social

media)– Long duration toast, 30 sec (person

waiting)

• Push notification–Windows Push Notification Services

Notification

Page 8: Windows 8 Hot or Not

WIN 8 LOOK’N’FEEL

Page 9: Windows 8 Hot or Not

Charms

• Search• Share• Start• Devices• Settings

Page 10: Windows 8 Hot or Not

Contracts

• Web of Applications–Sharing Contract–Picker Contract–Search Contract–More!

Page 11: Windows 8 Hot or Not

What is Windows Runtime ?

• OO API for writing Metro style applications• Written in native C++• Tuned for performance• Supports type reflection through

metadata• Supports many languages though

projections• Part of Windows, build each time OS is

compiled

Page 12: Windows 8 Hot or Not

Language SupportC#

XAML 5

apps

C++ Direct

X 2 apps

JS HTML

22 apps

• 29 apps in total• In Dev Preview: –75% JS, –17% C#, –8% C++

Page 13: Windows 8 Hot or Not

Windows Runtime

Page 14: Windows 8 Hot or Not

Is .NET dead ?

Page 15: Windows 8 Hot or Not

.NET Framework 4.5

• Preinstalled in Windows 8• No support for Windows XP

Page 16: Windows 8 Hot or Not

WinRT vs Silverlight

SL5

WinRT4396

1582

607

• Type comparison

Page 17: Windows 8 Hot or Not

WinRT vs Silverlight

SL5WinRT

10375

651

• Member comparison

4222

Page 18: Windows 8 Hot or Not

.NET Metro Profile

• Subset of Client Profile• No Remoting• No System.Data• No System.Web• No server side WCF• No private reflection, no Emit• Some API only in async version

Page 19: Windows 8 Hot or Not

DEMO – METRO IN C++

Page 20: Windows 8 Hot or Not

What is included in WinRT ?

Page 21: Windows 8 Hot or Not

Windows::UI

• Comparable set to Silverlight

• Lots of new controls:– WebView– MediaElement– MediaPlayer– GridView– FlipView– ApplicationBar

Page 22: Windows 8 Hot or Not

Windows::UI:Input

• Gone– Mouse events– Touch events– Stylus events

• Still There– Keyboard events– Manipulation events

• New– Pointer events– Tap, DoubleTab, RightTap

Page 23: Windows 8 Hot or Not

Windows::UI::Media::Animations::Transition

• Transitions for UIElement, Panel, ContentControl, and ItemsControl–Entrance Transition–Reposition Transition–Reorder Transition–AddDelete Transitions–Content Transitions

Page 24: Windows 8 Hot or Not

Windows::Storage::Pickers

• 2 types of pickers:–File Picker–Folder Picker

• Your app can show its content in either of these pickers

Page 25: Windows 8 Hot or Not

DEMO – METRO IN C#

Page 26: Windows 8 Hot or Not

Custom WinRT objects

• Share objects across all languages• Languages– C++/CX : speed– C#/VB : Ease of use

• Restrictions apply– Sealed classes– Exposed through an interface– Public API can only expose WinRT objects

Page 27: Windows 8 Hot or Not

DEMO – WINRT OBJECT IN C#

Page 28: Windows 8 Hot or Not

Application Execution Environment

App.exe WinRTAPIs OS

Direct API calls

BrokerBrokered API calls

Your App

App Container + Signed & verified code

Page 29: Windows 8 Hot or Not

Process state transition

Running App

Suspended App

Suspending

Resuming

Terminated

App

Low resources

Page 30: Windows 8 Hot or Not

What is not supported ?

• No { DynamicResource }• Poor WritableBitmap• Poor data binding• No default implementation for

IObservableVector<T>• 2 manifestations of INPC• No overlapping windows (no

MessageBox)

Page 31: Windows 8 Hot or Not

Common pitfals

• Code behind namespaces• XAML namespaces• DP• Custom controls and styles• ObservableCollectionxmlns:views=”using:My.Custom.Views”

Page 32: Windows 8 Hot or Not

Getting Windows 8 Dev Prev

• Windows 8 Developer Preview with developer tools English, 64-bit (x64)– 4.8 GB – DVD dual layer or pendrive 8GB– VS 2011 Express– Blend 5 Preview (Works only with HTML5/CSS)

• Windows 8 Developer Preview English, 64-bit• Windows 8 Developer Preview English, 32-bit• Visual Studio 2011 Ultimate Dev Prev

Page 33: Windows 8 Hot or Not

Reference

• MSDN Metro Guide:– http://msdn.microsoft.com/en-us/windows/apps

• Building Windows 8 Blog:– http://blogs.msdn.com/b/b8/

• BUILD Videos:– http://www.buildwindows.com/

• WinRT Transitions– http://bit.ly/vZU4fd

• WinRT vs SL5 comparison– http://bit.ly/spEtNE

Page 34: Windows 8 Hot or Not

Piotr Włodek

mail: [email protected] blog: http://pwlodek.blogspot.com twitter: @pwlodek