qcon rio 2015 desenvolvimento para windos...

Post on 23-May-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

QCON RIO 2015Desenvolvimento para Windos 10

Alexandre Chohfi – chohfi@outlook.com

@alexandrechohfi

Introduzindo o UWP

http://windows.Microsoft.com

Windows Core

Um Core comum refatoradoUma plataforma de hardware

Formato unico de acesso ao hardware

Rede e I/O padronizadas

PhoneDispositivo

XboxDispositivo

DesktopDispositivo

Windows Core

DesktopSKU

PhoneSKU

XboxSKU

http://windows.Microsoft.com

One Windows

Desktop

SKU

PC

2 in 1

Mobile

SKU

Tablet

Phablet

Phone

Xbox

SKU

Xbox

IoT

SKU

Band

IoT headless

SKU

Raspberry Pi

Home

Automation

Surface Hub

SKU

Surface Hub

Holographic

SKU

HoloLens

Cada família adiciona funcionalidades em cima do qual ele herda

http://windows.Microsoft.com

Fácil de usuáriosadotarem & se

manterem atualizados

Core unificado e plataforma de apps

A jornada de convergência

Windows 10

Kernel do SOConvergido

Modelo de desenvolvimentoconvergido

http://windows.Microsoft.com

Phone Tablet Pequeno2-em-1s

(Tablet ou Laptop)Desktops

& All-in-OnesPhablet Tablet GrandeLaptop

Clássico

Xbox IoTSurface Hub Holografico

Windows 10

http://windows.Microsoft.com

Uma loja +Um Dev Center

Reuso de códigoexistente

Uma SDK + Ferramenta

Interface de Usuário adaptativa

Inputs de Usuário naturais

Uma Plataforma Universal do Windows

(One Universal Windows Platform)

http://windows.Microsoft.com

Universal Windows Platform

Um único conjunto de APIsUm conjunto garantido de APIs

O mesmo em todos os dispositivos

PhoneDispositivo

XboxDispositivo

DesktopDispositivo

Windows Core

Universal Windows Platform

Aplicativos não têm como alvo o Windows 10, aplicativos tem como alvo a plataforma

http://windows.Microsoft.com

<TargetPlatform

Name="Microsoft.Universal"

minVersion="10.0.10240.0"

maxVersionTested="10.0.10532.0"/>

A plataforma(UWP) podeatualizar-se em seu próprio ritmo

http://windows.Microsoft.com

Windows app

Um único binário(pacote)Rodando em qualquer dispositivo

Testando por capacidades(capabilities)

Ajustando para dispositivos

PhoneDispositivo

XboxDispositivo

DesktopDispositivo

Windows Core

Universal Windows Platform

Windows App

http://windows.Microsoft.com

A história do desenvolvedor

Quando desenvolve para iOS, O desenvolvedor escreve para iPad & iPhone

Quando desenvolve para Android, O desenvolvedor escreve para todos os dispositivos suportados

Quando desenvolve para Windows 8, O desenvolvedor escreve para cada um dos dispositivos

Quando desenvolve para Windows 10, O desenvolvedor escreve para todos os dispositivos

http://windows.Microsoft.com

Extensões da plataforma

API específica para dispositivosCapacidades específicas da família

Compatível entre dispositivos

Cadência única de atualização

PhoneDispositivo

XboxDispositivo

DesktopDispositivo

Windows Core

Universal Windows Platform

Windows App

Phoneextensão

Xboxextensão

Desktopextensão

Extensões não invalidamos binários em outras plataformas

http://windows.Microsoft.com

Universal Windows Platform

Um Sistema OperacionalUm Core do Windows para todos os dispositivos

Uma Plataforma de AppsApps rodam dentro de sua família

Um Dev CenterUm único fluxo de submissão e um dashboard

Uma Loja Alcance global, monetização localConsumidores, Empresas & Academia

XAML/.Net não é a única maneira de se criar Windows Apps

http://windows.Microsoft.com

Windows 10sistema operacional

Tecnologias de pontes(Bridges)

Win32desktop

Webhospedado

JavaAndroid

Obj.CiOS

Universal Windows Platform

WWAC++& CX

.Netlinguagens

HTMLDirectX

XAML

C++

.Netlinguagens

MFCWFWPF

.Netruntime

http://windows.Microsoft.com

Tecnologias de pontes (Bridges)

Objective-CNo Build foi anunciado que código iOS pode ser reutilizado em Apps Windows

Project Islanwood: http://github.com/Microsoft/WinObjC

AndroidNo Build foi anunciado que código Android pode ser reutilizado em um App Windows para rodar no Windows Phone

Project Astoria

WebNo Build foi anunciado que web sites podem ser empacotados para rodar no Windows

Win32No Build foi anunciado que Classic Windows Apps (CWA) podem ser empacotados como um Appx

Pontes trazem mais aplicativos para a plataforma Windows

http://windows.Microsoft.com

Design Adaptativo

Design responsivoDesign flexivel que responde a pequenas mudanças

Muitos controles gerenciam responsividade básica

Design adaptativoLayouts inteligentes que se ajustam em grandes mudanças

Funcionalidades como visual states ajudam nesta solução

Design sob medida/específico (Tailored)App específico para um dispositivo pode simplificar o design

Alguns dispositivos podem ter uma linguagem de design única

http://windows.Microsoft.com

Continuum for Convertibles and PhonesContinuum para conversíveis(2in1) e Celulares

http://windows.Microsoft.com

http://windows.Microsoft.com

Código adaptativo

Um binário compatível entre devicesAPI universal com implementações específicas por dispositivo

Ilumine seu App com funcionalidadesTestando por namespaces e funcionalidades

Usuários amam Apps que funcionambem em todos seus devices

http://windows.Microsoft.com

Teste por recursos em runtime

Utilize código adaptativo para iluminar seu App emdispositivos específicos

var api = "Windows.Phone.UI.Input.HardwareButtons";

if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent(api))

{

Windows.Phone.UI.Input.HardwareButtons.CameraPressed

+= CameraButtonPressed;

}

http://windows.Microsoft.com

UAP

Windows Core Windows Core Windows Core Windows Core

UAP UAP UAP

Desktop Mobile Xbox Outros…

As famílias de dispositivos que vocêescolher determinam quais APIs você poderá chamar livremente

DEMO

Código adaptativo

Roslyn, o novo compilador para o .Net

http://windows.Microsoft.com

Onde eu posso desenvolver?

Windows 10Necessita do Visual Studio 2015

Melhor cenário

Windows 8.1 & Windows Server 2012 R2O designer do Visual Studio não funciona

Debug necessita um dispositivo com Windows 10, emuladores ou as Ferramentas de Debug Remoto (Remote Debugging Tools)

Windows 7O designer do Visual Studio não funciona

Debug necessita um dispositivo com Windows 10 ou as Ferramentas de Debug Remoto (Remote Debugging Tools)

Linguagens gerenciadas estão maiseficientes do que nunca

http://windows.Microsoft.com

.NET Native

Próxima geração de compiladores na núvemTodos Apps Windows

Apps usam o otimizador padrão do C++A medida que o otimizador melhora, o mesmo se reflete no .Net native

Apps com o bootstrapper .NetInclúi garbage collection

Não existe runtimeÉ código de maquina

Todo App Windows será é compilado com o .Net Native

http://windows.Microsoft.com

Beneficios reais com o .Net Native

50% mais rápido na inicialização

14% a menos no consumo médio de memória

.Net Native habilita a plataforma a atualizar-se muito mais rápidopois não tem dependências nospacotes

http://windows.Microsoft.com

345

609

663

277

510 511

0

100

200

300

400

500

600

700

Hello World (M) Dialer (M) Calc (PC)

Tem

po

em

ms

8.1 10

7.5

12.6

18.4

4.2

7

12.5

0

2

4

6

8

10

12

14

16

18

20

Hello World (M) Dialer (M) Calc (PC)

Din

âm

ica

em

MB

8.1 10

InicializaçãoMemória

Beneficios da plataforma universal

Windows 10 renderizatexto 50% mais rápido

Perguntas?

top related