universal windows platform - application development done right

44
Universal Windows Platform Application development done right

Upload: christos-matskas

Post on 14-Apr-2017

219 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Universal windows platform - Application development done right

Universal Windows PlatformApplication development done right

Page 2: Universal windows platform - Application development done right

HelloI’m Christos

@christosmatskas cmatskas https://cmatskas.com

Page 3: Universal windows platform - Application development done right
Page 4: Universal windows platform - Application development done right
Page 5: Universal windows platform - Application development done right
Page 6: Universal windows platform - Application development done right
Page 7: Universal windows platform - Application development done right

AgendaWhat is the Universal Windows Platform - UWPHello Devices - DemoResponsive UI Techniques Adaptive CodeBridging – Going cross platform

Page 8: Universal windows platform - Application development done right

Easy for users to get & stay

current

Unified core and app platform

The convergence journey

Windows Phone 7.5

Windows Phone 8Windows Phone 8.1

Windows 8

Xbox One

Windows on Devices

Xbox 360

Windows 8.1

Windows 10

ConvergedOS kernel

Convergedapp model

Page 9: Universal windows platform - Application development done right

Phone Small Tablet

2-in-1s(Tablet or Laptop)

Desktops & All-in-OnesPhablet Large Tablet

Classic Laptop

Xbox IoTSurface Hub

Holographic

Windows 10

Page 10: Universal windows platform - Application development done right

Multiple device families

PC XBoxMobile Surface Hub

HoloLensDevices +IoT

Universal Apps

One Store +One Dev Center

Reuse Existing CodeOne SDK +

Tooling

Adaptive User Interface Natural

User Inputs

One Universal Windows Platform

Page 11: Universal windows platform - Application development done right

Windows 10operating system

Bridging technologies

Win32desktop

Webhosted

JavaAndroid

Obj.CiOS

Universal Windows Platform

WWAC++& CX

.Netlanguages

HTMLDirectX

XAML

C++

.Netlanguages

MFCWFWPF

.Netruntime

Page 12: Universal windows platform - Application development done right

Universal Windows PlatformA single API surfaceA guaranteed API surfaceThe same on all devices

PhoneDevice

XboxDevice

DesktopDevice

Windows Core

Universal Windows Platform

Page 13: Universal windows platform - Application development done right

A whole lot of APIs…

Storage DirectX 12 Speech and Cortana

Networking NFC and Bluetooth

Holographic Audio and Video

Appointments/Calendar

Authentication Broker

Background Transfer

Sensors: Acceleromete

r, light, magnet …

Tiles and Notifications

App to App and App Services

InkingMaps and Location

XAML Background Tasks

Data Roaming

Data.XML Media Casting

Many, many more….

Page 14: Universal windows platform - Application development done right

Apps don't target Windows 10, apps target the UWP

Page 15: Universal windows platform - Application development done right

{ "dependencies": { "Microsoft.NETCore.UniversalWindowsPlatform": "5.0.0" }, "frameworks": { "uap10.0": {} }, "runtimes": { "win10-arm": {}, "win10-arm-aot": {}, "win10-x86": {}, "win10-x86-aot": {}, "win10-x64": {}, "win10-x64-aot": {} }}

Page 16: Universal windows platform - Application development done right

The Universal Windows Platform can update at its own cadence

Page 17: Universal windows platform - Application development done right

Windows appA single binary Running on any deviceTesting for capabilitiesAdjusting to devices

PhoneDevice

XboxDevice

DesktopDevice

Windows Core

Universal Windows Platform

Windows App

Page 18: Universal windows platform - Application development done right

Demo: Hello devices

Page 19: Universal windows platform - Application development done right

Universal Windows PlatformOne Operating SystemOne Windows core for all devices

One App PlatformApps run across every family

One Dev CenterSingle submission flow and dashboard

One Store Global reach, local monetization Consumers, Business & Education

Page 20: Universal windows platform - Application development done right

One Windows

DesktopSKU

PC

2 in 1

MobileSKU

Tablet

Phablet

Phone

XboxSKU

Xbox

IoTSKU

Band

IoT headless

SKU

Raspberry Pi

Home Automati

on

Surface HubSKU

Surface Hub

Holographic

SKU

HoloLens

Page 21: Universal windows platform - Application development done right

Each family offers its own shelland adds features to those it inherits

Page 22: Universal windows platform - Application development done right

Adaptive UI

Page 23: Universal windows platform - Application development done right

Adaptive designResponsive designFlexible layout responds to small changes

Many controls handle basic responsivenessAdaptive design

Smart layout adjusts to large changesFeatures like visual states aid in this design

Tailored designA device-specific app can simplify design Some devices have unique design languages

Page 24: Universal windows platform - Application development done right

Adaptive designPhone (portrait)

Tablet (landscape) / Desktop

Page 25: Universal windows platform - Application development done right

Tailored designPhone (portrait)

Tablet (landscape) / Desktop Build unique experiences on different devices

Page 26: Universal windows platform - Application development done right

Continuum for Convertibles and PhonesContinuum for convertibles and Phones

Page 27: Universal windows platform - Application development done right

Users love apps that give a great experience on all their devices

Page 28: Universal windows platform - Application development done right

We want you to use your design, fonts, icons etc…

If you’re stuck, or need inspiration, we share our first party guidance that you can use

Page 29: Universal windows platform - Application development done right

Demo: Adaptive UI

Page 30: Universal windows platform - Application development done right

Platform extensionsDevice-specific APIFamily-specific capabilitiesCompatible across devicesUnique update cadence

PhoneDevice

XboxDevice

DesktopDevice

Windows Core

Universal Windows Platform

Windows App

Phoneextension

Xboxextension

Desktop

extension

Page 31: Universal windows platform - Application development done right

Platform extensions don't invalidate binaries on other devices

Page 32: Universal windows platform - Application development done right

UWP

Windows Core Windows Core Windows Core Windows Core

UWP UWP UWP

Desktop Mobile Xbox More…

Page 33: Universal windows platform - Application development done right

Test capabilities at runtimeUse Adaptive Code to light-up our app with capabilities on specific device familiesTesting for capabilities and namespaces

var api = "Windows.Phone.UI.Input.HardwareButtons";if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent(api)){

Windows.Phone.UI.Input.HardwareButtons.CameraPressed += CameraButtonPressed;} 

Page 34: Universal windows platform - Application development done right

Demo: Adaptive code

Page 35: Universal windows platform - Application development done right

Bridging Technologies

Page 36: Universal windows platform - Application development done right

pp

Web Apps

NEW: Hosted Web Apps

Bring your website experience to the Windows Store

Leverage your web investments and developer workflow

Full access to Universal APIs, including Tiles, Notifications, Camera, Contact List, Calendar

Universal Windows Platform

.appx

HTMLCSSJS

Page 37: Universal windows platform - Application development done right

Windows Bridge for Android(a.k.a. Project Astoria)Tooling to allow apps written for Android™ to run on Windows 10 Mobile with few changes requiredMicrosoft Interoperability library redirects calls to Google services to Microsoft services

Submit .apk to the StoreExtend to call subset of UWP APIsTiles and Notifications

Sign up for limited developer preview at http://uwp.dev.windows.com/en-US/uwp-bridges/android

Page 38: Universal windows platform - Application development done right

Windows Bridge for iOS(previously known as ‘Project Islandwood’)Build Universal Windows Apps using Objective-CImport Xcode® projects into Visual StudioBuild and debug your Objective-C code from Visual StudioTake advantage of great Windows servicesExtend your app to take advantage of Universal Windows Platform features

Get the Developer Preview: https://dev.windows.com/en-us/uwp-bridges/ios Code is open source: https://github.com/Microsoft/WinObjC/

Page 39: Universal windows platform - Application development done right

Project CentennialPackage and publish existing .NET and Win32-based Windows applications to the Windows StoreUse Centennial to call common UWP APIs and services

More information coming soon…

Page 40: Universal windows platform - Application development done right

Development tools

Page 41: Universal windows platform - Application development done right

Visual Studio 2015 EditionsEnterpriseArchitecture Modeling, Diagnostics, VSO/ALM & Release Management

ProfessionalArchitecture Validation, VSO/ALM & Feedback Management

Community EditionsVisual Studio Professional Edition

Page 42: Universal windows platform - Application development done right

Developer unlock

Page 43: Universal windows platform - Application development done right

Where can I develop?Windows 10Requires Visual Studio 2015

Windows 8.1 & Windows Server 2012 R2The Visual Studio designer does not functionDebugging requires a Windows 10 device or Remote Debugging Tools

Page 44: Universal windows platform - Application development done right

dev.windows.com