Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Essas perguntas frequentes fornecem respostas para perguntas comuns sobre o desenvolvimento de aplicativos do Windows, incluindo diretrizes sobre como escolher a estrutura certa para seus projetos. Os tópicos abordados incluem:
- Introdução e o cenário de desenvolvimento de aplicativos do Windows.
- Desenvolvimento de aplicativos nativos somente do Windows com WinUI, Windows Presentation Foundation (WPF) e WinForms (Windows Forms).
- SDK (Software Development Kit) do Windows e SDK de Aplicativos do Windows.
- Direcionando o Windows como parte de sua estratégia de desenvolvimento multiplataforma.
- Desenvolvimento de aplicativos Web e híbridos com .NET MAUI, Blazor e ASP.NET Core.
- Como escolher uma abordagem ao entender os investimentos da Microsoft.
Cenário de desenvolvimento de aplicativos do Windows
Onde posso encontrar uma visão geral simples das tecnologias de desenvolvimento do Windows?
Para obter uma ótima análise das opções de hoje para desenvolvedores do Windows, assista ao episódio mais recente do Windows Dev Chat, Escolhendo sua plataforma de desenvolvimento ideal, em que eles discutem WinUI, .NET MAUI, React Native, Blazor e PwAs (Aplicativos Web Progressivos).
Você também pode consultar a visão geral das opções de desenvolvimento de aplicativos para desenvolvedores do Windows.
Por que o desenvolvimento de aplicativos cliente ainda é crucial para a transformação digital moderna na era dos serviços de nuvem?
Na era dos serviços de nuvem, o desenvolvimento de aplicativos cliente continua sendo um componente crítico da transformação digital moderna. Para os desenvolvedores, a criação de aplicativos cliente é essencial não apenas para o alcance, mas para fornecer interações responsivas e significativas em dispositivos de usuário.
Veja por que os aplicativos cliente importam:
- Alcance do Dispositivo: Com mais de 1,5 bilhão de dispositivos Windows e mais de 5 bilhões de dispositivos Android e iOS globalmente, os aplicativos cliente permitem que você traga seus aplicativos diretamente aos usuários em seus dispositivos de escolha.
- Gateway para Serviços Inteligentes: aplicativos cliente geralmente são a primeira interação que os usuários têm com seus serviços. Eles oferecem uma interface avançada e interativa que permite que você mostre recursos inteligentes e diferencie seu produto de outras pessoas.
- Escalabilidade com a Integração de Nuvem: Um aplicativo cliente bem integrado pode ser sincronizado sem esforço com serviços de nuvem de back-end, permitindo acesso a dados em tempo real e escalabilidade perfeita à medida que sua base de usuários cresce.
- Produtividade Aprimorada e Fidelidade do Usuário: Um aplicativo cuidadosamente projetado pode aumentar a produtividade e manter os usuários envolvidos com seu produto ou serviço ao longo do tempo.
Desenvolvimento de aplicativos nativos somente do Windows
O que é o SDK do Aplicativo do Windows?
O SDK do Aplicativo Windows é uma plataforma de desenvolvimento de aplicativos do Windows que permite criar aplicativos de área de trabalho bonitos, modernos e compatíveis com versões anteriores (até Windows 10 1809). O WinUI é a estrutura de interface do usuário que é fornecida com o SDK do Aplicativo do Windows.
Qual é a diferença entre o SDK do Aplicativo do Windows e o SDK do Windows?
Ambos são SDKs (kits de desenvolvimento de software) que permitem criar aplicativos Windows.
O SDK do Aplicativo Windows é uma nova plataforma de desenvolvimento que permite criar aplicativos de área de trabalho modernos que podem ser instalados em versões Windows (até Windows 10 1809). Ao criar com o SDK do Aplicativo do Windows, os recursos mais recentes da plataforma de desenvolvimento do Windows estão disponíveis. O SDK do Aplicativo do Windows inclui o WinUI.
O SDK do Windows é uma plataforma de desenvolvimento que permite criar aplicativos UWP e aplicativos Win32/área de trabalho. Ele foi projetado com base em APIs Windows acopladas a versões específicas do sistema operacional.
O SDK do Aplicativo Windows não substitui o SDK do Windows. Em vez disso, o SDK do Aplicativo do Windows complementa o SDK do Windows. Ele fornece uma abstração conveniente e desacoplada pelo sistema operacional em torno do catálogo avançado de APIs do sistema operacional Windows que já estão acessíveis usando o SDK do Windows. Os aplicativos criados com o SDK do Aplicativo do Windows ainda podem usar APIs do SDK do Windows, dependendo das necessidades de funcionalidade. Com o tempo, mais funcionalidades do SDK do Windows serão movidas para o SDK do Aplicativo do Windows.
Estou criando uma nova equipe para desenvolver um aplicativo somente para Windows. Por que devo optar por desenvolver com uma estrutura nativa do Windows, como WinUI, WPF ou WinForms?
Aqui estão alguns motivos para escolher uma estrutura nativa do Windows para seu aplicativo somente windows:
- Desempenho: As estruturas nativas do Windows são otimizadas para aproveitar o hardware moderno do Windows, fornecendo experiências rápidas e responsivas do usuário.
- Integração: O Windows é fornecido com uma ampla variedade de APIs que permitem experiências sofisticadas disponíveis apenas no Windows. As estruturas nativas fornecem integração profunda com esses recursos e APIs.
- Experiência do usuário nativo: As estruturas nativas fornecem uma experiência consistente em dispositivos Windows, garantindo que seu aplicativo tenha uma aparência excelente em todos os lugares.
- Suporte offline: As estruturas nativas dão suporte a cenários offline, permitindo que os aplicativos funcionem mesmo sem conectividade com a Internet.
- Monetização: As estruturas nativas são mantidas ativamente e compatíveis com a Microsoft, garantindo o acesso às atualizações e recursos mais recentes.
Qual estrutura devo usar para aproveitar os investimentos mais recentes da Microsoft no desenvolvimento de aplicativos do Windows?
Se você estiver criando um novo aplicativo somente do Windows, recomendamos usar o WinUI. O WinUI é a estrutura de interface do usuário nativa mais recente para o desenvolvimento de aplicativos do Windows e foi projetado para funcionar em uma ampla gama de dispositivos Windows. Ele fornece uma estrutura de interface do usuário moderna e flexível para criar aplicativos do Windows visualmente atraentes e interativos. O WinUI faz parte do SDK do Aplicativo do Windows e funciona melhor com as versões mais recentes do Windows.
Posso usar o SDK do Aplicativo do Windows/WinUI no meu aplicativo existente do Windows?
Observe que o WinUI (uma estrutura de interface do usuário) é fornecido com o SDK do Aplicativo do Windows (uma estrutura de desenvolvimento de plataforma do Windows).
Geralmente, o WinUI não pode ser usado, a menos que o aplicativo esteja pronto para migrar totalmente sua estrutura de interface do usuário. Um recurso chamado ilhas XAML está em desenvolvimento para hospedar conteúdo do WinUI em outras estruturas de interface do usuário (WPF, Win32).
Elementos do SDK de Aplicativo do Windows geralmente podem ser usados em aplicativos da área de trabalho, dependendo de como o aplicativo existente foi criado. Não há suporte para aplicativos UWP pelo SDK do Aplicativo do Windows.
Isso significa que os aplicativos WPF/MFC/WinForms podem usar APIs do SDK de Aplicativo do Windows que não estão relacionadas ao WinUI. Exemplos incluem Ciclo de Vida do Aplicativo, Gerenciamento de Janelas e Notificações Toast.
Consulte Usar o SDK do Aplicativo do Windows em um projeto existente para obter mais informações.
Preciso usar o Visual Studio para criar aplicativos WinUI?
Usar o Visual Studio 2022 versão 17.10 ou superior é altamente recomendável para o desenvolvimento do WinUI. As versões mais recentes do Visual Studio oferecem recursos avançados de desenvolvimento, como o Hot Reload e incluem uma carga de trabalho de desenvolvimento de aplicativos WinUI que simplifica a instalação.
Outros IDEs e fluxos de trabalho podem funcionar, mas o Visual Studio é atualmente o único IDE com suporte oficial para WinUI. Observe que o MSBuild é necessário para compilar projetos XAML ou WinUI.
Qual é a diferença entre WinUI, WinUI 2 e WinUI 3?
O WinUI é a estrutura de interface do usuário nativa mais recente para o desenvolvimento de aplicativos do Windows. Ele fornece uma estrutura de interface do usuário moderna e flexível para criar aplicativos do Windows visualmente atraentes e interativos. O WinUI faz parte do SDK do Aplicativo do Windows e funciona melhor com as versões mais recentes do Windows.
O WinUI 2 é um conjunto de controles de interface do usuário e estilos criados com base na UWP. Ele fornece uma aparência moderna para aplicativos UWP e foi projetado para o Windows 10.
WinUI 3 era o nome anterior do WinUI quando ele foi enviado pela primeira vez como parte do SDK do Aplicativo do Windows.
Em resumo, o WinUI é a versão mais recente e avançada da estrutura WinUI, o WinUI 2 é uma biblioteca de controle para UWP e o WinUI 3 era um rótulo anterior para WinUI. Use "WinUI" daqui para frente, a menos que se refira especificamente ao WinUI 2.
Ao criar um aplicativo usando o SDK do Aplicativo do Windows e o WinUI, estou criando um "aplicativo WinUI"?
Sim — "Aplicativo WinUI" é o termo recomendado. Os aplicativos WinUI são chamados de "aplicativos WinUI" porque o WinUI 2 não é um tipo de aplicativo, mas um conjunto de componentes usados em aplicativos UWP.
Posso atualizar incrementalmente meu aplicativo UWP com controles WinUI 2 para WinUI, substituindo gradualmente os componentes do WinUI 2 por componentes do WinUI?
Não. O SDK do Aplicativo do Windows não pode ser usado em aplicativos UWP e o WinUI 2 não pode ser misturado com WinUI. Confira Migrar da UWP para o SDK do Aplicativo Windows.
Qual é a dificuldade de migrar um aplicativo UWP para o WinUI?
A migração de componentes da interface do usuário costuma ser simples (para C# e C++/WinRT). Caso contrário, o custo de migração depende principalmente de:
- Arquivo de projeto e personalização do MSBuild: O esforço de migração varia dependendo do uso avançado do MSBuild.
- Migração da API do .NET: Os aplicativos UWP que usam o .NET devem passar para o .NET 6 ou posterior. Em muitos casos, a adoção do .NET 6 é simples.
- Bibliotecas de componentes da interface do usuário: As bibliotecas devem ter versões direcionadas ao WinUI.
- Se o aplicativo UWP for escrito em C++/CX, agora obsoleto, é necessário portar parte do código-fonte. Confira Migrar do C++/CX para o C++/WinRT.
Para obter mais informações, consulte Migrar da UWP para o SDK do Aplicativo do Windows.
Se eu tiver um aplicativo UWP existente na Loja, posso publicar um novo aplicativo WinUI empacotado usando os mesmos identificadores?
Sim, os aplicativos atualizados podem ser publicados sem atualizar a identidade do aplicativo. Os usuários da versão antiga serão atualizados para a nova versão. Isso se aplica somente a aplicativos de desktop. Os aplicativos Xbox, HoloLens e Surface Hub não podem migrar para o WinUI.
Como fazer para empacotar/distribuir meu aplicativo WinUI?
Confira Visão geral da implantação.
Onde posso encontrar as diretrizes de migração do SDK de Aplicativo do Windows?
Preciso usar a marcação XAML se quiser usar o WinUI?
Não. Os controles de interface do usuário podem ser criados no código. No entanto, representar a interface do usuário na marcação XAML declarativa oferece muitos benefícios, incluindo uma experiência de desenvolvedor aprimorada.
- Migrando de UWP para WinUI: muitos componentes XAML e interface do usuário podem ser reutilizados, embora alguns ajustes de sintaxe sejam necessários.
- Migrando do WPF para o WinUI: muitos conceitos são transferidos, mas o conjunto de controle e as APIs diferem.
O Visual Studio tem um editor de interface para WinUI?
Ainda não. Essa é uma lacuna conhecida na experiência do desenvolvedor do WinUI. Ferramentas como Recarga Dinâmica de XAML podem ajudar em muitos cenários. O trabalho foi iniciado em um designer de interface do usuário do Visual Studio para WinUI no SDK do Aplicativo do Windows 1.7, mas ainda não há um cronograma para seu lançamento.
O SDK do Aplicativo do Windows inclui o WinUI?
Sim. O WinUI é fornecido como parte do SDK do Aplicativo do Windows.
O SDK do Aplicativo do Windows inclui o WinUI 2?
Não. A WinUI 2 faz parte da plataforma UWP.
O WinUI 2 e o WinUI são criados com base na mesma tecnologia?
Não exatamente. Embora o WinUI tenha iniciado originalmente a partir da base de código do WinUI 2, elas são tecnologias distintas. Ambas são estruturas de interface do usuário baseadas em XAML que funcionam entre .NET e C++, mas WinUI 2 e WinUI não são compatíveis entre si.
Posso usar o WinUI sem usar o SDK do Aplicativo do Windows?
Não. O WinUI é fornecido como parte do SDK do Aplicativo do Windows.
Posso usar o WinUI em um aplicativo não empacotado?
Sim. Todas as tecnologias no SDK do Aplicativo do Windows, incluindo o WinUI, funcionam em aplicativos não empacotados.
Qual é a diferença entre ilhas XAML e WinUI?
As Ilhas XAML permitem hospedar controles modernos baseados em XAML ao lado da interface do usuário Win32 existente de outras estruturas, como WinForms e WPF.
Hoje, as Ilhas XAML dão suporte à maioria dos controles XAML e WinUI 2 do sistema. Consulte os controles XAML do Host WinRT em aplicativos da área de trabalho (Ilhas XAML) para obter mais detalhes. O suporte para hospedagem de controles WinUI está disponível a partir do SDK do Aplicativo do Windows 1.4.
Se eu criar um aplicativo WinUI, ele ficará moderno no Windows 11 e no Windows 10?
Sim. A interface de usuário do seu aplicativo herdará os mais recentes princípios de design do Fluent UI em todas as versões compatíveis do Windows 11 e Windows 10, até a versão 1809, em cenários empacotados e não empacotados.
Posso usar planos de fundo Mica ou Acrílico em aplicativos criados com o SDK do Aplicativo do Windows?
Sim. Consulte Aplicar materiais de Mica ou Acrílico em aplicativos de área de trabalho para Windows 11.
Onde posso encontrar exemplos do WinUI?
Consulte Exemplo e recursos. Alguns repositórios de destaque:
- Exemplos do WindowsAppSDK: demonstra como usar conjuntos específicos da API do SDK do Aplicativo Windows.
- Exemplos específicos do tópico do Windows: contém um exemplo de anotações do WinUI usado no tutorial Criar um aplicativo WinUI .
- da Galeria winui: mostra o WinUI e o SDK do Aplicativo do Windows. Também disponível na Microsoft Store.
Se eu já tiver investido pesado no WPF, devo continuar a usar o WPF ou considerar a migração para o WinUI?
Se você já investiu pesado no WPF, pode continuar usando-o para aplicativos existentes. O WPF é uma estrutura madura e estável amplamente usada para criar aplicativos da área de trabalho do Windows.
Considere usar o Assistente de Atualização do .NET para migrar aplicativos WPF do .NET Framework para a plataforma .NET mais recente. Ele analisa sua base de código e fornece diretrizes sobre como atualizá-la.
Se eu criar um novo aplicativo WPF, ele parecerá datado em comparação com outros novos aplicativos do Windows?
Ao desenvolver um aplicativo WPF com o .NET 9 ou posterior, você pode garantir que seu aplicativo corresponda à aparência elegante e moderna do Windows 11. O novo tema fluente para WPF apresenta uma estética contemporânea do Windows 11, com suporte integrado ao modo Claro/Escuro e à cor de destaque do sistema. Isso moderniza a aparência do aplicativo e oferece uma experiência de usuário polida e coesa.
Minha equipe está confortável criando aplicativos WinForms e atende às nossas necessidades. Devemos considerar a migração para o WinUI ou outra estrutura?
Se o WinForms atender às suas necessidades e sua equipe estiver confortável com isso, você poderá continuar usando WinForms para aplicativos existentes. O WinForms é uma estrutura madura e estável amplamente usada para o desenvolvimento da área de trabalho do Windows.
A equipe do WinForms continua investindo na plataforma. Algumas áreas atuais de investimento incluem:
- Suporte assíncrono para controles comuns
- Modo escuro
- Flexibilidade de layout
- Recursos de segurança para desktop, como o acesso ao clipboard
Desenvolvimento nativo multiplataforma
Quais são alguns dos motivos para criar aplicativos nativos e multiplataforma direcionados ao Windows?
Se você estiver direcionando usuários em várias plataformas do sistema operacional, a criação de aplicativos multiplataforma com o .NET MAUI ou o React Native pode oferecer vários benefícios:
- Chegar: Os aplicativos multiplataforma atingem um público-alvo maior em diferentes dispositivos e sistemas operacionais.
- Reutilização de código: Reutilização de código entre plataformas reduz o tempo e o custo de desenvolvimento. Criar aplicativos separados para Windows, Android, iOS e macOS pode ser proibitivamente caro.
- Experiência consistente do usuário: As estruturas multiplataforma ajudam a fornecer uma aparência consistente entre plataformas.
- Integração: Aplicativos multiplataforma ainda podem se integrar a serviços específicos da plataforma para oferecer uma experiência abrangente.
Posso ter certeza de que os aplicativos MAUI do .NET funcionarão bem no Windows?
Quando você cria um aplicativo MAUI do .NET para Windows, a saída é um aplicativo WinUI. Durante o desenvolvimento, o .NET MAUI oferece uma única experiência do .NET entre as plataformas, mas gera código específico da plataforma nos bastidores. Isso garante que os aplicativos MAUI do .NET sejam bem executados em cada plataforma e forneçam uma experiência de usuário nativa.
Como o .NET MAUI pode fornecer APIs de dispositivo nativo em todas as plataformas?
O .NET MAUI fornece uma experiência unificada do .NET no Windows, iOS, Android e macOS. Ele abstrai mais de 60 APIs específicas da plataforma em um único conjunto de API multiplataforma, abrangendo áreas como armazenamento, rede e sensores de dispositivo. APIs adicionais específicas da plataforma também podem ser acessadas usando a injeção de dependência para fornecer implementações especializadas por plataforma.
Posso começar com o WinUI e integrar posteriormente o .NET MAUI se eu eventualmente quiser direcionar cenários de plataforma cruzada?
Não neste momento. Embora o .NET MAUI use WinUI ao executar no Windows, as equipes que esperam direcionar várias plataformas devem começar com o .NET MAUI ou React Native para Desktop.
Nossa equipe tem fortes habilidades de desenvolvimento de front-end na Web. Devemos considerar o uso do React Native para Área de Trabalho?
Equipes com forte experiência de desenvolvimento na Web podem querer considerar o React Native para Área de Trabalho. Ele inclui o React Native para Windows e macOS. Com a abordagem "Aprender uma vez, escrever em qualquer lugar", as habilidades existentes de JavaScript, TypeScript e React podem ser usadas para criar aplicativos nativos do Windows e macOS.
O React Native for Desktop renderiza a interface do usuário diretamente para primitivos nativos, fornecendo recursos nativos de desempenho e plataforma.
Consulte a documentação do React Native for Desktop para começar.
Outros dispositivos Windows têm suporte do React Native para Área de Trabalho?
Os aplicativos React Native podem ser implantados em todos os dispositivos compatíveis com o Windows 10 e posterior, incluindo computadores, tablets, 2 em 1s, Xbox e dispositivos de realidade misturada.
O que devo usar se quiser criar aplicativos que funcionam no Windows e no Xbox?
Se o aplicativo precisar dar suporte ao Xbox, HoloLens ou IoT, a UWP será recomendada. O SDK do Aplicativo do Windows não dá suporte a essas plataformas. Para desenvolvimento de jogos, use o Microsoft Game Development Kit.
O que devo usar se quiser criar aplicativos que funcionam no Windows e no Surface Hub?
Se você tiver como alvo tanto o Windows quanto o Surface Hub, recomenda-se usar UWP.
Desenvolvimento híbrido e web
O que são aplicativos híbridos e por que devo considerar a criação de um?
Os aplicativos híbridos combinam o melhor do desenvolvimento de aplicativos web e nativos. Seu núcleo é criado usando tecnologias web como HTML, CSS e JavaScript e encapsulado em um contêiner nativo que fornece acesso a determinados recursos e hardware de plataforma nativa. Eles também podem ser distribuídos por meio de lojas de aplicativos.
A principal vantagem é que os aplicativos híbridos permitem que você crie um único aplicativo que possa ser executado em várias plataformas nativas e na Web, reduzindo o tempo e o custo de desenvolvimento. Exemplos de plataformas de desenvolvimento de aplicativos híbridos incluem:
- Electron para aplicativos da área de trabalho
- Ionic para aplicativos móveis
- .NET MAUI Blazor Hybrid para aplicativos multiplataforma
Como eu crio PWAs (aplicativos Web progressivos) com aparência nativa no Windows?
Confira Desenvolvimento da Web no Windows e Visão geral de Aplicativos Web Progressivos.
O que é um aplicativo híbrido .NET MAUI Blazor?
Com o .NET MAUI, os aplicativos Blazor podem ser executados nativamente no Windows, iOS, Android e macOS. Isso permite que você crie aplicativos cliente híbridos que combinam componentes blazor e .NET MAUI em um único aplicativo cliente nativo, com acesso total aos recursos de plataforma nativa.
Saiba mais em ASP.NET Core Blazor Hybrid.
Os componentes Web de um aplicativo híbrido .NET MAUI precisam ser criados com o Blazor?
Não. A partir do .NET 9, o .NET MAUI inclui um controle HybridWebView que permite hospedar outras interfaces do usuário baseadas em JavaScript dentro de um aplicativo nativo.
Isso permite hospedar aplicativos Angular, React, Vue ou outros aplicativos HTML/JavaScript dentro de um aplicativo .NET MAUI. O controle híbrido fornece interoperabilidade entre C# e JavaScript, de modo que o código C# pode chamar funções JavaScript e vice-versa.
Algum outro tipo de aplicativo nativo pode hospedar componentes híbridos Blazor?
Sim. Os aplicativos WPF e WinForms também podem hospedar componentes híbridos Blazor, possibilitando adicionar uma UI web moderna a aplicativos existentes. Não há suporte para aplicativos WPF ou WinForms criados no .NET Framework.
Meu aplicativo inteiro precisa ser um aplicativo híbrido ou posso misturar componentes nativos e híbridos?
Componentes nativos e híbridos podem ser misturados em um aplicativo. Por exemplo, o núcleo de um aplicativo pode ser criado com componentes MAUI do .NET, enquanto os componentes híbridos fornecem funcionalidade adicional. Isso permite combinar o desempenho e os recursos de componentes nativos com a flexibilidade e a eficiência de custo dos componentes híbridos.
Quais são as minhas escolhas para construir. Aplicativos Web baseados em NET que parecem ótimos em navegadores modernos no Windows?
Os aplicativos Web oferecem o maior alcance de qualquer plataforma de aplicativo cliente. As opções para criar aplicativos Web .NET bonitos incluem:
- aplicativos do ASP.NET Core com o Razor Pages
- ASP.NET principais aplicativos MVC
- ASP.NET principais aplicativos Blazor, com opções de modelo de hospedagem:
- WebAssembly Blazor
- Blazor Server
Os modelos de hospedagem blazor agora podem ser configurados no nível do componente, permitindo cenários como hospedar um componente Blazor WebAssembly em um aplicativo Blazor Server.
Consulte a documentação do ASP.NET Core para obter mais detalhes.
Escolha uma abordagem e entenda os investimentos da Microsoft
Há tantas opções de estrutura para criar aplicativos direcionados ao Windows! Como faço para decidir?
O Windows é uma plataforma aberta que dá suporte a muitas tecnologias. Aqui estão alguns critérios que podem ajudá-lo a escolher uma plataforma:
- Você está criando o Windows-first ou multiplataforma?
- Quais idiomas ou habilidades você já tem : .NET, JavaScript, outra coisa?
- Você precisa de acesso a APIs específicas do Windows?
- Quais recursos da estrutura melhor correspondem aos requisitos do seu aplicativo?
- Consulte esta tabela para obter fatores de comparação adicionais.
Para muitos aplicativos de negócios, as equipes geralmente escolhem com base nas habilidades existentes e no que a equipe está mais confortável usando.
Como escolher a melhor abordagem de desenvolvimento para meu aplicativo Web?
Considere o seguinte ao escolher uma abordagem de desenvolvimento para seu aplicativo Web:
- O Blazor é recomendado para criar aplicativos Web front-end com o .NET. Ele permite que você crie o front-end e o back-end usando o .NET, economizando tempo e custo, e isso é especialmente bom para aplicativos empresariais.
- Os aplicativos Web JavaScript ainda fazem sentido se você quiser aproveitar as habilidades existentes do JavaScript ou precisar se integrar a bibliotecas ou estruturas JS estabelecidas.
- Os aplicativos existentes que usam estruturas mais antigas, como Web Forms, MVC ou Razor Pages, permanecem com suporte e podem continuar a ser desenvolvidos e mantidos.
Quem está criando aplicativos com WinUI hoje?
Muitos clientes estão criando com o WinUI hoje, incluindo Adobe e Apple:
- Adobe Fresco, um aplicativo gratuito de desenho e pintura.
- Os aplicativos Apple Music, Apple TV e Apple Devices da Apple foram criados com o WinUI e o SDK do Aplicativo do Windows.
A Microsoft também criou muitos aplicativos WinUI, como o Explorador de Arquivos do Windows 11 e o aplicativo Fotos.
Quem está criando aplicativos MAUI do .NET hoje?
Muitos clientes, incluindo a Microsoft, estão criando aplicativos multiplataforma com o .NET MAUI. Por exemplo, o aplicativo móvel do Microsoft Azure é criado usando o MAUI do .NET.
Veja mais na vitrine de clientes do .NET.
Quem está criando aplicativos WPF hoje?
A maior parte da interface do usuário do Microsoft Visual Studio é criada com o WPF. O IDE do Visual Studio em si é um exemplo importante de um aplicativo WPF complexo e de alto desempenho.
Quem está criando aplicativos Blazor hoje?
O sistema de aviação FlightPulse da GE Digital usa Blazor para a configuração de back-end de tudo o que os pilotos veem, trazendo dados de sensores e análises diretamente para os pilotos, para melhorar a segurança e a eficiência.
Veja mais histórias de clientes Blazor no site do .NET.
UWP e WinUI 2
Os aplicativos UWP podem ser distribuídos fora da Microsoft Store?
Sim. Se o pacote MSIX for assinado, o certificado de assinatura deverá ser válido e confiável no dispositivo de destino.
Posso misturar controles de interface do usuário XAML UWP com controles de interface do usuário Win32, WPF ou WinForms?
Sim — As Ilhas XAML permitem isso. Saiba mais sobre ilhas XAML.
Empacotamento, implantação e atualizações
Qual é a diferença entre aplicativos empacotados, desempacotados e empacotados com localização externa?
Para obter definições de empacotados, desempacotados e empacotados com aplicativos de localização externos, consulte a visão geral da implantação. Esse tópico também explica as vantagens e desvantagens de cada opção.
Meu aplicativo WinUI será atualizado automaticamente para usuários finais?
Um aplicativo WinUI pode ser entregue por meio da Loja, um arquivo .appinstaller ou por meio de um pacote MSI ou setup.exe existente. A Loja e o AppInstaller dão suporte a atualizações automáticas para usuários finais que têm atualizações automáticas habilitadas, mas os aplicativos MSI/setup.exe devem fornecer seu próprio mecanismo de atualização.
Posso usar o SDK do Aplicativo do Windows sem usar o MSBuild?
Geralmente, não. O WinUI e o SDK de Aplicativo do Windows exigem o MSBuild, razão pela qual o Visual Studio é um pré-requisito para desenvolver com eles. Embora tecnicamente seja possível criar aplicativos do SDK de Aplicativos do Windows que não usam WinUI com outras cadeias de ferramentas, isso não tem suporte.
Desempenho e otimização
O que posso fazer para fazer com que meu aplicativo do Windows se sinta ótimo para os usuários finais?
Confira Otimizar os aplicativos para Windows.
Compatibilidade
Meus usuários precisarão atualizar o Windows para usar meu aplicativo WinUI?
Usuários com Windows 10, versão 1809 ou posterior podem instalar aplicativos WinUI sem atualizar o sistema operacional.
Posso direcionar o Arm64 com meu aplicativo WinUI?
Sim.
Preterimentos e migrações
A UWP/WinUI 2 foi preterida?
Não. A UWP e o WinUI 2 ainda têm suporte e continuam a receber correções de bug, confiabilidade e segurança. No entanto, a maioria dos novos recursos e funcionalidades são adicionados ao WinUI.
O suporte UWP para .NET 9 está disponível. Essa opção fornece um caminho de modernização para aplicativos UWP usando a versão mais recente do .NET.
As metas de suporte à UWP do .NET 9 são:
- Forneça um caminho de migração melhor para desenvolvedores que desejam migrar para o WinUI.
- Remova as dependências do .NET Native para que os desenvolvedores possam se beneficiar dos recursos mais recentes do .NET e do C#.
Para obter mais informações, consulte a postagem no blog: Modernizar seu aplicativo UWP com suporte de versão prévia da UWP para .NET 9 e AOT nativo.
Quando devo migrar um aplicativo UWP/WinUI 2 para o WinUI?
Os desenvolvedores da UWP não devem se sentir pressionados a migrar se estiverem satisfeitos com a UWP e seu conjunto de recursos , para muitos aplicativos, a opção certa pode ser permanecer na UWP.
Os aplicativos que desejam se beneficiar dos investimentos mais recentes da plataforma Windows e do .NET devem considerar a migração para o SDK do Aplicativo do Windows. Confira Migrar da UWP para o SDK do Aplicativo Windows.
Quando devo *não* migrar um aplicativo UWP + WinUI 2 para o WinUI?
Continue usando uwp se você estiver criando para Xbox, Surface Hub ou HoloLens.
O WPF foi descontinuado?
Não. O WPF tem suporte, é recomendado e continua recebendo atualizações de recursos. Consulte o roteiro do WPF no GitHub.
O WinForms está obsoleto?
Não. O WinForms tem suporte e continua recebendo atualizações de recursos. Consulte o roteiro do Windows Forms no GitHub.
O WinRT (Windows Runtime) foi preterido?
Não. O WinRT é uma ABI (interface binária de aplicativo) que permite interoperabilidade em vários idiomas. O WinRT é a evolução do COM e o SDK de Aplicativos do Windows fornece a maior parte de sua funcionalidade por meio de APIs do WinRT.
Notas de lançamento
Onde posso encontrar notas de versão para o SDK do Aplicativo do Windows?
As notas de versão mais recentes podem ser encontradas na página Novidades .
Conteúdo relacionado
Windows developer