windows 8, door henk holterman op de 4dotnet developers day

26
4DotNet Developers Day Sessie over Windows 8, verzorgd door Henk Holterman.

Upload: hanneke-dotnet

Post on 13-Jun-2015

444 views

Category:

Technology


3 download

DESCRIPTION

Windows 8, door Henk Holterman op de 4DotNet Developers Day

TRANSCRIPT

Page 1: Windows 8, door Henk Holterman op de 4DotNet Developers Day

4DotNet Developers Day

Sessie over Windows 8, verzorgd door Henk Holterman.

Page 2: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Agenda

• Windows 8• Metro• Windows Runtime• .NET 4.5, C# 5, VS 11• Zelf proberen

Page 3: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Windows re-imagined

• MS: net zo’n grote stap als Win 3.1 -> Win95• Telefoons, Pads, Full HD (plus) Monitoren• Touch, Sensors, camera’s• Always connected• Social Media• Cloud• Security• …

Page 4: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Windows 8

• Windows Explorer met Ribbon– Maar ook: 200 Shortcut Keys

• Hyper-V• Nieuwe TaskManager• Betere Restore en Reset• nog veel meer …• En vooral: Metro

Page 5: Windows 8, door Henk Holterman op de 4DotNet Developers Day

UEFI : veilig opstarten

• Hoort niet direct bij Win 8 maar meer bij het Moederbord• Ook voor andere OS-en en multi-boot

• er is discussie, niet iedereen is blij

Page 6: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Metro

van telefoon tot supermonitor

Page 7: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Metro – de GUI

• Simpeler• Minder lijnen• Minder kleur gradienten• Strakke typografie• Past zich aan aan Resolutie(s) en Orientatie• Geen overlappende Vensters meer• Regie over layout: Tiles, Snap, Fill, Fullscreen• En vooral: Touch

Page 8: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Interactie

• For the User: Charms • For the Developer: Contracts• Share– Targets: Twitter, Facebook, Mail, NotesTaker, … – Source: Almost everything

• Search • Picker• …

Page 9: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Al weer een platform

C++

C#, VB

CLR

Win32

NT Kernel

HTML, JSASP.NET

HTTP

C++, C#, VBJS, HTML

WinRT

Desktop Metro Web

x86 / x64 (Intel/AMD) ARM

Page 10: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Windows RunTime (WinRT)

• Is unmanaged• Lijkt (API) op CLR• Nadruk op asynchrone I/O• Vervanger/opvolger COM• Vervanger/opvolger WIN32

Page 11: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Windows 8 : WinRT

Windows Kernel Services

JavaScript(Chakra)C/C++ C#, VB

Metro style Apps

Communication & Data

Application Model

Devices & Printing

Windows Runtime APIsGraphics &

Media

XAML HTML / CSS

HTMLJavaScript

CC++

C#VB

Desktop Apps

Win32 .NET SL

Internet Explorer

Page 12: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Windows 8 : WinRT (V2)

Windows Kernel Services

JavaScript(Chakra)C/C++

C#, VB

Metro style Apps

Communication & Data

Application Model

Devices & Printing

Windows Runtime APIsGraphics &

Media

XAML HTML / CSS

HTMLJavaScript

CC++

C#VB

Desktop Apps

Win32 .NET SL

Internet Explorer

CLR 4.5

Page 13: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Metro style application APIs

DevicesSensorsGeolocation Portable NFC

Communications & DataContracts

XML

Web

SMSNetworking

Notifications

Local & Cloud Storage

Streams

Background Transfer

User InterfaceHTML5/CSS XAML DirectX Controls

Input Accessibility Printing

Data Binding

TilesSVG

FundamentalsApplication Services Authentication Cryptography GlobalizationMemory ManagementThreading/Timers

MediaVisual EffectsPlayback PlayToCapture

Page 14: Windows 8, door Henk Holterman op de 4DotNet Developers Day

The one-stop company for .NET development

Application lifetime

Running App

Suspended App

Suspending

Resuming

Terminated App

Low Memory

No Notification!

• The user’s view: Don’t close. Just leave.

5 seconds to save yourself

Page 15: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Fx 4.5

Page 16: Windows 8, door Henk Holterman op de 4DotNet Developers Day

C# and VB evolution

Managed Code

Generics

Language Integrated Query

Dynamic + Language Parity

C# 5.0 + VB 11.0Windows Runtime + Asynchrony

C# 1.0 + VB 7.0

C# 2.0 + VB 8.0

C# 3.0 + VB 9.0

C# 4.0 + VB 10.0

Page 17: Windows 8, door Henk Holterman op de 4DotNet Developers Day

The one-stop company for .NET development

What’s new?C# 5.0

• Windows Runtime support• Asynchronous programming• Caller info attributes

VB 11.0

• Windows Runtime support• Asynchronous programming• Caller info attributes• Iterators

Page 18: Windows 8, door Henk Holterman op de 4DotNet Developers Day

The one-stop company for .NET development

Asynchronous programming models

• Windows Runtime: IAsyncOperation<T>• .NET Framework: Task<T>• Javascript: Promises• All are objects representing “ongoing operations”• All use callbacks to signal completion of operation• Challenge: Callbacks turn your code inside out• Insight: Automatic transformation to callbacks is

possible

Page 19: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Asynchrony

Page 20: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Versie 1 : synchroon

static byte[] TryFetch(string url){  var client = new WebClient();  try  {    return client.DownloadData(url);  }  catch (WebException) { ... }  return null;}

Page 21: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Versie 2 : asynchroon met callbackstatic void TryFetchAsync(string url,  Action<byte[], Exception> callback){  var client = new WebClient();

  client.DownloadDataCompleted += (_, args) =>  {    if (args.Error == null) 

callback(args.Result, null);    else ...    };

  client.DownloadDataAsync(new Uri(url));}

1

3

2

Page 22: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Versie 3: async/awaitstatic async Task<byte[]> TryFetchAsync(string url)

{  var client = new WebClient();  try  {    return await client.DownloadDataTaskAsync(url);

  }  catch (WebException) { ... }  return null;}

Page 23: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Zelf proberen?

• Windows Developer Preview with developer tools English, 64-bit (x64) ISO, 4.8GB

• 64-bit Windows Developer Preview• Windows SDK for Metro style apps• Microsoft Visual Studio 11 Express for Windows

Developer Preview• Microsoft Expression Blend 5 Developer Preview• 28 Metro style apps including the BUILD Conference

app

Page 24: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Visual Studio 11

• Let op: .NET 4.5 vervangt 4.0• WPF designer: (subset van) Blend

Page 25: Windows 8, door Henk Holterman op de 4DotNet Developers Day

Virtuele installatie

• Functional:– Hyper-V in Windows 8 Developer Preview– Hyper-V in Windows Server 2008 R2– VMware Workstation 8.0 for Windows– VirtualBox 4.1.2 for Windows

• Non-functional:– Microsoft Virtual PC (all versions)– Microsoft Virtual Server (all versions)– Windows 7 XP Mode– VMWare Workstation 7.x or older

Page 26: Windows 8, door Henk Holterman op de 4DotNet Developers Day

the end