O documento discute o Desktop App Converter, que converte aplicativos Windows 32 bits (Win32) para o formato Universal Windows Platform (UWP), permitindo que esses aplicativos sejam distribuídos na Windows Store. O conversor adiciona funcionalidades UWP aos poucos, enquanto mantém o código existente funcionando. Isso permite que desenvolvedores modernizem aplicativos gradualmente e os distribuam em mais dispositivos.
Muito além das startups: Build-Measure-Learn em sistemas corporativos
Desktop App Converter: Trazendo Apps Win32 para a Windows Store
1. w w w . l a m b d a 3 . c o m . b r
Desktop App Converter
(Project “Centennial”)
Trazendo apps Win32 para a Windows Store
dotNetConf.local | São Paulo - Lambda3 | 30/08/2016
2. Desde 2006
• Visual Studio ALM
Sobre mim
@igorabade
www.tshooter.com.br
Desde 2010
• Consultoria
• Desenvolvimento
• Treinamento
Democracia Organizacional
3. Windows 10
operating system
Bridging technologies
Win32
desktop
Web
hosted
Obj.C
iOS
Universal Windows Platform
WWAC++
& CX
.Net
languages
HTML
DirectX
XAML
C++
.Net
languages
MFCWFWPF
.Net
runtime
Vamos falar sobre modelo de aplicações?
4. Por que precisamos de um Modelo de
Aplicações?
• Windows nunca teve a definição de “o que é uma aplicação”
• Quer dizer, você sabe o que é quando vê uma, mas não foi formalizado
• Começou com os arquivos .exe mas…
• Como você instala?
• Como você armazena estado?
• Por quanto tempo a aplicação fica em execução?
• Como é feito o versionamento?
• Como você integra com o SO?
• Como você integra com outras aplicações?
• Do que a sua aplicação é capaz?
• Precisamos de um Modelo Universal
5. Fácil de obter e
atualizar
Núcleo e
plataforma de
aplicação
unificados
A jornada da convergência
Windows Phone 7.5
Windows Phone 8
Windows
Phone 8.1
Windows 8
Xbox One
Windows on Devices
Xbox 360
Windows 8.1
Windows 10
Kernel do SO
unificado
Converged
app model
6. Phone Small Tablet
2-in-1s
(Tablet or Laptop)
Desktops
& All-in-OnesPhablet Large Tablet
Classic
Laptop
Xbox IoTSurface Hub Holographic
Windows 10
7. One Store +
One Dev Center
Reuse
Existing
CodeOne SDK +
Tooling
Adaptive
User Interface
Natural
User Inputs
One Universal Windows Platform
8. O que é o “UWP Windows App Model”
• Define o ciclo de vida da aplicação
• Unificado em todos os dispositivos Windows
• Escala desde IOTMobilePCXboxHololens
• Do nascimento ao fim da vida
• Instalação
• Ambiente de execução
• Gestão de Recursos
• Atualização
• Modelo de dados
• Desinstalação
9. Modelo de Aplicações UWP
Inclui todas as aplicações que rodam no Windows
• Novas aplicações Universal Windows Apps
• Aplicações Existentes
• Phone Apps
• Windows 8.1 Apps
• Aplicações Clássicas Windows (CWA, Classic Windows Apps)
Desktop App Converter (Project “Centennial”)
• Estende o UWP App Model para Aplicações Clássicas Windows
10. Apresentando o Desktop App
Converter
Desktop App Converter – Trazendo apps Win32 para a Windows Store
11. What is Project Centennial?
Aperfeiçoa a plataforma Windows para todos os desenvolvedores
• Converte aplicações desktop para a tecnologia de implantação
Universal Windows (appx)
• Mantém seu código atual Win32/.NET funcionando
• Mesmo código para PCs com Windows 10 e Windows 7/8
• Adicione components Universal Windows ao longo do tempo
• Monetização via Windows Store (ou outro canal de distribuição)
16. Como isso funciona?
• Deployment
• Usa Universal Windows Platform Deployment Stack
• Extensões para os pontos de extensibilidade WIn32
• Extensões do Shell (ex. associações de tipo de arquivo)
• Resolve “DLL Hell”, “Registry Bloat”/“Windows Rot”
• Redirecionamento/Mesclagem do Registry
• Redirecionamento/Mesclagem do Sistema de Arquivos
• Redirecionamento de escrita para alguns diretórios
• Mesmo código continua funcionando no
Windows 7, 8, etc.
17. Ponte (bridge) para a Universal Windows
Platform
Neste ponto sua aplicação já tem:
• Instalação moderna
• Ativação por Tiles, tipos de arquivo ou Protocolos URL
• App Identity acesso à API UWP
• UWP App Model
• Ou seja… Tudo o que uma
UWA pode fazer!
19. Continuando a Migração para UWP
Configuration Security Management Updates
Natural User
Inputs
One SDK +
Tooling
Cloud
Services
One Store +
One Dev Center
Adaptive User
Interface
Holographic XboxDevices +IoT Surface HubMobilePC
• Fazer tudo o que uma aplicação UWP pode fazer
• Tirar proveito de mais APIs UWP
• Tirar proveito de Serviços de Aplicação, Tarefas de Segundo
Plano & gatilhos
• Migrar UI para XAML
21. Processos Desktop & App Container
• Código atual executando em um processo Desktop
• Aplicação UWP roda em um App Container
• Ativar processo Desktop a partir de App Container e vice-versa
• Inter Process Communication (via AppService)
Activate
Desktop
Process
App Container
Process
24. Complete a Migração para UWP
• Remova código não-aderente
• Mais APIs Win32 suportadas no AppContainer
• Mova o resto do código para o App Container
• Rode em qualquer dispositivo (PC, phone, Xbox One, HoloLens,
etc.)
25. Resumo
• Project Centennial é uma
ponte para UWAs
• Converte suas aplicacões para
AppX
• Virtualiza acesso a recursos
• Permite que você adicioner
Recursos UWA aos poucos