Windows 8 - Hot or Not

spanflockInternet και Εφαρμογές Web

24 Ιουν 2012 (πριν από 5 χρόνια και 2 μήνες)

462 εμφανίσεις

Windows
8

Hot or Not

Piotr Włodek

Agenda

Metro

Charms

Contracts

WinRT

App Execution
Environment

Motion

Summary

Metro UI

Metro Design

Metro Design


Typography


Motion


Content not Chrome



Photoshop METRO’ified

WIN 8 LOOK’N’FEEL

Application layout


Display orientation


Landscape


Portrait


Flipped


Application layout


Fullscreen


Fill


Snapped


Application layout

Fullscreen view (100 %)

Application layout

Snapped view (25 %)

Fill view (75 %)


Tile notification (live tiles)


Square or wide


Badge (number or glypth)

Notification


Toast notification


Standard toast, 7 sec (e
-
mail, IM, social media)


Long duration toast, 30 sec (person waiting)

Notification


Push notification


Windows Push Notification Services (WNS)

Notification

Windows Charms


Search


Share


Start


Devices


Settings

Contracts


Web
of
Applications


Sharing Contract


Picker Contract


Search
Contract


More!


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


Windows Runtime

Language Support

C
#

XAML


5

apps

C
++

DirectX

2

apps

JS

HTML

22

apps


29 apps in total


In
Dev

Preview:


75% JS,


17% C#,


8% C++


Is .NET dead ?

.NET Framework 4.5


Preinstalled in Windows 8


No support for Windows XP


WPF 4.5


Ribbon out of the box


Binding to static properties


Collections on non
-
UI thread


Async validation (INotifyDataErrorInfo)


Huge VirtualizingStackPanel perf improvements


WinRT vs Silverlight

SL5

WinRT

4396

1582

607


Type comparison

WinRT vs Silverlight

SL5

WinRT

10375

651


Member
comparison

4222

.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

DEMO


METRO IN C++

What is included in WinRT ?


Windows::UI


Comparable set
to
Silverlight


Lots of new
controls
:


WebView


MediaElement


Media
Player


GridView


FlipView


AppBar


Windows::UI:Input


Gone


Mouse events


Touch
e
vents


Stylus
e
vents


Still
There


Keyboard
e
vents


Manipulation
e
vents


New


Pointer
e
vents


Tap, DoubleTab, RightTap


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


Transitions for
UIElement
,
Panel
,
ContentControl
, and
ItemsControl


Entrance
Transition


Reposition Transition


Reorder Transition


AddDelete

Transitions


Content
Transitions


Windows::Storage::Pickers


2 types of
pickers:


File Picker


Folder Picker


Your app can
show its content
in

either of these
pickers

DEMO


METRO IN C#

Custom WinRT
o
bjects


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 primitive types and
WinRT objects

DEMO


WINRT
OBJECT IN C#

Application Execution Environment

App.exe

WinRT

APIs

OS

Direct API calls

Broker

Brokered
API calls

Your App

App Container +

S
igned & verified code

Process state transition

Running
App

Suspended
App

Suspending

Resuming

Terminated

App

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)

Common pitfals



Code behind namespaces


XAML namespaces


DP


Custom controls and styles


ObservableCollection

xmlns:views=”using:My.Custom.Views”

Getting Windows 8 DP


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


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




Piotr Włodek


mail:

piotr.wlodek@gmail.com


blog:
http://pwlodek.blogspot.com


twitter
:

@pwlodek