Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Esta FAQ fornece respostas a perguntas comuns sobre o desenvolvimento de aplicações Windows, incluindo orientações sobre como escolher o framework certo para os seus projetos. Os tópicos abordados incluem:
- Introdução e o panorama do desenvolvimento de aplicações para Windows.
- Desenvolvimento nativo de aplicações exclusivo para Windows com WinUI 3, Windows Presentation Foundation (WPF) e Windows Forms (WinForms).
- Kit de Desenvolvimento de Software Windows (SDK) e SDK de Aplicações Windows.
- Fazer do Windows o alvo como parte da sua estratégia de desenvolvimento multiplataforma.
- Desenvolvimento híbrido e de aplicações web com .NET MAUI, Blazor e ASP.NET Core.
- Como escolher uma abordagem enquanto compreende os investimentos da Microsoft.
Panorama do desenvolvimento de aplicações Windows
Onde posso encontrar uma visão geral direta das tecnologias de desenvolvimento Windows?
Para uma excelente análise das opções de hoje para programadores de Windows, veja o episódio mais recente Windows Dev Chat, Escolher a sua plataforma de desenvolvimento ideal, onde discutem WinUI, .NET MAUI, React Native, Blazor e Progressive Aplicações Web (PWAs).
Também pode consultar a visão geral das opções de desenvolvimento de aplicações para programadores para Windows.
Porque é que o desenvolvimento de aplicações cliente continua a ser crucial para a transformação digital moderna na era da cloud services?
Na era dos cloud services, o desenvolvimento de aplicações para clientes continua a ser 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 nos dispositivos do usuário.
Eis porque as aplicações clientes são importantes:
- Alcance do Dispositivo: Com mais de 1,5 mil milhões de dispositivos Windows e mais de 5 mil milhões de dispositivos Android e iOS em todo o mundo, as aplicações clientes permitem-lhe levar as suas aplicações diretamente aos utilizadores nos seus dispositivos preferidos.
- Gateway para Serviços Inteligentes: As aplicações cliente são frequentemente a primeira interação dos utilizadores com os seus serviços. Eles oferecem uma interface rica e interativa que permite que você exiba recursos inteligentes e diferencie seu produto dos outros.
- Escalabilidade com Integração na Cloud: Uma aplicação cliente bem integrada pode sincronizar facilmente com os serviços de backend na cloud, permitindo acesso a dados em tempo real e escalabilidade fluida à medida que a sua base de utilizadores cresce.
- Maior produtividade 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 nativo de aplicações só para Windows
Qual é a SDK de Aplicações Windows?
O SDK de Aplicações Windows é uma plataforma de desenvolvimento de aplicações Windows que permite criar aplicações de ambiente de trabalho bonitas, modernas e retrocompatíveis (até ao Windows 10 1809). O WinUI é a framework de interface que vem com o SDK de Aplicações Windows.
Qual é a diferença entre o SDK de Aplicações Windows e o SDK Windows?
Ambos são kits de desenvolvimento de software (SDKs) que permitem criar aplicações para Windows.
A SDK de Aplicações Windows é uma nova plataforma de desenvolvimento que permite criar aplicações de ambiente de trabalho modernas que podem ser instaladas em Windows versões (até Windows 10 1809). Ao compilar com SDK de Aplicações Windows, estão disponíveis as funcionalidades mais recentes da plataforma de desenvolvimento Windows. O SDK de Aplicações Windows inclui o WinUI.
O SDK Windows é uma plataforma de desenvolvimento que permite construir aplicações UWP e aplicações Win32/desktop. Foi desenhado em torno de APIs do Windows acopladas a versões específicas do sistema operativo.
O SDK de Aplicações Windows não substitui o SDK Windows. Em vez disso, o SDK de Aplicações Windows complementa o Windows SDK. Proporciona uma abstração conveniente, desacoplada do sistema operativo, em torno do rico catálogo de APIs do Windows OS que já estão acessíveis através do Windows SDK. As aplicações construídas com o SDK de Aplicações Windows podem ainda usar APIs do Windows SDK, dependendo das necessidades de funcionalidade. Com o tempo, mais funcionalidades do Windows SDK passarão para o SDK de Aplicações Windows.
Estou a formar uma nova equipa para desenvolver uma aplicação exclusiva de Windows. Porque é que devo escolher desenvolver com uma framework Windows nativa como WinUI, WPF ou WinForms?
Aqui estão algumas razões para escolher uma framework Windows nativa para a sua aplicação exclusiva do Windows:
- Performance: Os frameworks nativos de Windows são otimizados para tirar partido do hardware Windows moderno, proporcionando experiências de utilizador rápidas e responsivas.
- Integration: Windows vem com uma grande variedade de APIs que permitem experiências sofisticadas disponíveis apenas em Windows. Frameworks nativos proporcionam uma integração profunda com estas funcionalidades e APIs.
- Experiência de utilizador nativa: Os frameworks nativos proporcionam uma experiência consistente em dispositivos Windows, garantindo que a sua aplicação tenha um aspeto e funcione perfeitamente em qualquer lugar.
- Suporte offline: Frameworks nativos suportam cenários offline, permitindo que as aplicações funcionem mesmo sem ligação à internet.
- Monetização: Os frameworks nativos são mantidos e suportados ativamente pela Microsoft, garantindo o acesso às últimas atualizações e funcionalidades.
Que framework devo usar para aproveitar os mais recentes investimentos da Microsoft no desenvolvimento de aplicações Windows?
Se estiver a criar uma nova aplicação só para Windows, recomendamos usar o WinUI. O WinUI é o mais recente framework nativo de interface para desenvolvimento de aplicações Windows e foi concebido para funcionar numa vasta gama de dispositivos Windows. Fornece uma estrutura de interface moderna e flexível para criar aplicações Windows visualmente apelativas e interativas. O WinUI faz parte do SDK de Aplicações Windows e funciona melhor com as versões mais recentes do Windows.
Posso usar SDK de Aplicações Windows / WinUI na minha aplicação de Windows existente?
Note que WinUI (um framework de UI) vem com o SDK de Aplicações Windows (um framework de desenvolvimento de plataforma Windows).
Geralmente, o WinUI não pode ser usado a menos que a aplicação esteja pronta para migrar completamente o seu framework de interface. Uma funcionalidade chamada Ilhas XAML permite hospedar conteúdos WinUI noutros frameworks de UI (WPF, Win32). Consulte a documentação das Ilhas XAML para mais informações.
Elementos do SDK de Aplicações Windows podem frequentemente ser usados em aplicações de ambiente de trabalho, dependendo de como a aplicação existente foi construída. As aplicações UWP não são suportadas pelo SDK de Aplicações Windows.
Isto significa que as aplicações WPF/MFC/WinForms podem usar APIs SDK de Aplicações Windows que não estão relacionadas com o WinUI. Exemplos incluem Ciclo de Vida da Aplicação, Janelas e Notificações Toast.
Consulte Use o SDK de Aplicações Windows num projeto existente para mais informações.
Preciso de usar Visual Studio para construir aplicações WinUI?
O uso do Visual Studio 2026 ou versões posteriores é fortemente recomendado para desenvolvimento do WinUI. As versões mais recentes Visual Studio oferecem funcionalidades de desenvolvimento ricas como Hot Reload e incluem uma carga de trabalho WinUI para desenvolvimento de aplicações que simplifica a configuração.
Outros IDEs e fluxos de trabalho podem funcionar, mas Visual Studio é atualmente o único IDE oficialmente suportado para o WinUI. Note que o MSBuild é necessário para compilar projetos XAML ou WinUI.
Recebo o erro "Não é possível carregar DLL 'Microsoft.ui.xaml.dll'" ao correr a minha aplicação. Como é que resolvo?
Este erro ocorre normalmente em cenários de aplicações não embaladas em que o tempo de execução do SDK de Aplicações Windows não foi instalado na máquina. Experimente o seguinte:
- Se estiveres a usar uma aplicação packaged (o padrão recomendado), certifica-te de que estás a iniciar via Visual Studio com o perfil de lançamento MsixPackage selecionado (não o perfil do executável simples). A etapa de empacotamento MSIX instala os componentes de runtime necessários.
- Se estiveres a usar uma aplicação unpackaged, tens de instalar o runtime SDK de Aplicações Windows separadamente antes de correr a aplicação fora da Visual Studio.
- Se o erro ocorrer durante o desenvolvimento, abra o seu
.csproje confirme que a configuração do empacotamento corresponde ao seu modelo de implementação: para aplicações empacotadas , omita a<WindowsPackageType>propriedade (ou mantém-na no padrão) e compila/executa o pacote MSIX; para aplicações não empacotadas , define<WindowsPackageType>None</WindowsPackageType>e certifica-te de que ligouBootstrap.Initialize()no arranque.Consulte Deploy apps que utilizam o SDK de Aplicações Windows para mais detalhes sobre os requisitos de implementação.
Qual é a diferença entre o WinUI 3 e o WinUI 2 para UWP?
WinUI (anteriormente referido como WinUI 3) é o mais recente framework nativo de UI para desenvolvimento de aplicações Windows. Fornece uma estrutura de interface moderna e flexível para criar aplicações Windows visualmente apelativas e interativas. O WinUI faz parte do SDK de Aplicações Windows e funciona melhor com as versões mais recentes do Windows.
WinUI para UWP (anteriormente referido como WinUI 2) é um conjunto de controlos e estilos de interface construídos sobre o UWP. Proporciona um aspeto moderno para aplicações UWP e foi concebido para Windows 10.
Quando construo uma aplicação usando SDK de Aplicações Windows e WinUI, estou a construir uma "app WinUI"?
Sim — "WinUI app" é o termo recomendado. As aplicações WinUI são chamadas de "aplicações WinUI" porque o WinUI para UWP não é um tipo de aplicação, mas sim um conjunto de componentes usados em aplicações UWP.
Posso atualizar incrementalmente a minha aplicação UWP com o WinUI para controlos UWP para o WinUI, substituindo gradualmente o WinUI para componentes UWP por componentes WinUI?
Não. O SDK de Aplicações Windows não pode ser usado em aplicações UWP, e o WinUI para UWP não pode ser combinado com o WinUI. Ver Migrar do UWP para o SDK de Aplicações Windows.
Quão difícil é migrar uma aplicação UWP para o WinUI?
A migração de componentes da interface do usuário geralmente é simples (para C# e C++/WinRT). Caso contrário, o custo da migração depende principalmente de:
- Customização do ficheiro de projeto e do MSBuild: O esforço de migração varia consoante o uso avançado do MSBuild.
- Migração da API .NET: aplicações UWP que usam .NET devem migrar para .NET 6 ou posterior. Em muitos casos, adotar o .NET 6 é simples.
- Bibliotecas de componentes UI: As bibliotecas devem ter versões direcionadas para o WinUI.
- Se a aplicação UWP for escrita no agora obsoleto C++/CX, é necessário portar o código-fonte. Consulte Transição para C++/WinRT a partir de C++/CX.
Para mais informações, consulte Migrar do UWP para o SDK de Aplicações Windows.
Se eu tiver uma aplicação UWP existente na Loja, posso publicar uma nova aplicação WinUI empacotada usando os mesmos identificadores?
Sim, as aplicações atualizadas podem ser publicadas sem atualizar a identidade da aplicação. Os utilizadores da versão antiga serão atualizados para a nova versão. Isto aplica-se apenas a aplicações de ambiente de trabalho. As aplicações Xbox, HoloLens e Surface Hub não conseguem migrar para o WinUI.
Como empacotar/distribuir a minha aplicação WinUI?
Consulte Visão geral da implantação.
Onde posso encontrar SDK de Aplicações Windows orientação sobre migração?
Preciso de usar marcação XAML se quiser usar o WinUI?
Não. Os controles de interface do usuário podem ser criados em código. No entanto, representar a interface em marcação XAML declarativa oferece muitos benefícios, incluindo uma experiência de programador melhorada.
- Migração do UWP para o WinUI: Muitos componentes XAML e UI podem ser reutilizados, embora sejam necessários alguns ajustes na sintaxe.
- Migração do WPF para o WinUI: Muitos conceitos mantêm-se, mas o conjunto de controlos e as APIs diferem.
Tem Visual Studio um designer de superfície de design / UI para o WinUI?
Ainda não. Esta é uma lacuna conhecida na experiência do programador WinUI. Ferramentas como XAML Hot Reload podem ajudar em muitos cenários. O trabalho começou num designer de Visual Studio UI para o WinUI no SDK de Aplicações Windows 1.7, mas ainda não há um prazo para o seu lançamento.
O SDK de Aplicações Windows inclui o WinUI?
Yes. O WinUI é fornecido como parte do SDK de Aplicações Windows.
Inclui SDK de Aplicações Windows WinUI para UWP?
Não. O WinUI para UWP faz parte da plataforma UWP.
O WinUI para UWP e o WinUI são construídos com base na mesma tecnologia?
Não exatamente. Embora o WinUI tenha começado originalmente com a base de código WinUI para UWP, são tecnologias distintas. Ambos são frameworks de interface baseados em XAML que funcionam em .NET e C++, mas o WinUI para UWP e o WinUI não são compatíveis entre si.
Posso usar o WinUI sem usar SDK de Aplicações Windows?
Não. O WinUI é fornecido como parte do SDK de Aplicações Windows.
Posso usar o WinUI numa aplicação não empacotada?
Yes. Todas as tecnologias do SDK de Aplicações Windows, incluindo o WinUI, funcionam em aplicações não empacotadas.
Qual é a diferença entre ilhas XAML e WinUI?
XAML Islands permite alojar controlos modernos baseados em XAML ao lado de interfaces Win32 existentes de outros frameworks, como WinForms e WPF.
Atualmente, as Ilhas XAML suportam a maioria dos sistemas XAML e WinUI para controlos UWP. Consulte os controlos XAML do Host WinRT em aplicações de ambiente de trabalho (Ilhas XAML) para mais detalhes. O suporte para alojar controlos WinUI está disponível a partir de SDK de Aplicações Windows 1.4.
Se criar uma aplicação WinUI, vai parecer moderna tanto no Windows 11 como no Windows 10?
Yes. A interface da sua aplicação herdará os princípios mais recentes de design Fluent UI em todas as versões suportadas do Windows 11 e Windows 10, até à versão 1809, tanto em cenários empacotados como não empacotados.
Posso usar fundos de Mica ou Acrílico em aplicações construídas com SDK de Aplicações Windows?
Yes. Consulte Aplicar materiais de Mica ou Acrílico em aplicações de desktop para Windows 11.
Onde posso encontrar exemplos do WinUI?
Consulte Exemplo e recursos. Alguns repositórios notáveis:
- WindowsAppSDK-Samples: Demonstra como usar conjuntos específicos de APIs SDK de Aplicações Windows.
- Exemplos específicos do Windows por tópico: Contém um exemplo de notas do WinUI utilizado no tutorial Criar uma app WinUI.
- WinUI 3 Galeria: Apresenta o WinUI e o SDK de Aplicações Windows. Também disponível no Microsoft Store.
Se já investi muito em WPF, devo continuar a usar WPF ou considerar migrar para o WinUI?
Se já investiu bastante no WPF, pode continuar a usá-lo para aplicações existentes. O WPF é uma framework madura e estável, amplamente utilizada para construir aplicações de ambiente de trabalho para Windows.
Considere usar o .NET Upgrade Assistant para migrar .NET Framework WPF apps para a plataforma .NET mais recente. Analisa a sua base de código e fornece orientações sobre como a atualizar.
Se eu criar uma nova aplicação de WPF, vai parecer desatualizada comparada com outras novas aplicações de Windows?
Ao desenvolver uma aplicação WPF com .NET 9 ou posterior, pode garantir que a sua aplicação corresponde ao aspeto moderno e elegante do Windows 11. O novo tema Fluent para WPF introduz uma estética contemporânea do Windows 11, com modo Claro/Escuro integrado e suporte a cores de destaque do sistema. Isto moderniza a aparência da sua aplicação e proporciona uma experiência de utilizador polida e coesa.
A minha equipa sente-se confortável a construir aplicações WinForms e isso adequa-se às nossas necessidades. Devemos considerar migrar para o WinUI ou outro framework?
Se o WinForms responder às suas necessidades e a sua equipa se sentir confortável com ele, pode continuar a usar o WinForms para aplicações existentes. O WinForms é uma framework madura e estável, amplamente utilizada para o desenvolvimento de ambiente de trabalho Windows.
A equipa WinForms continua a investir na plataforma. Algumas áreas de investimento atuais incluem:
- Suporte assíncrono para controlos comuns
- Modo escuro
- Flexibilidade de layout
- Funcionalidades de segurança no ambiente de trabalho, como acesso a prancheta
Desenvolvimento nativo multiplataforma
Quais são algumas razões para construir aplicações nativas multiplataforma direcionadas a Windows?
Se estiver a direcionar utilizadores em várias plataformas de SO, construir aplicações de plataforma cruzada com .NET MAUI ou React Native pode apresentar diversos benefícios.
- Alcance: As aplicações multiplataforma alcançam um público maior através de diferentes dispositivos e sistemas operativos.
- Reutilização de código: Reutilizar código entre plataformas reduz o tempo e o custo de desenvolvimento. Construir aplicações separadas para Windows, Android, iOS e macOS pode ser proibitivamente caro.
- Experiência de utilizador consistente: Os frameworks multiplataforma ajudam a proporcionar uma aparência e sensação consistentes entre plataformas.
- Integração: As aplicações multiplataforma ainda podem integrar-se com serviços específicos da plataforma para proporcionar uma experiência abrangente.
Posso confiar que .NET MAUI aplicações vão correr bem no Windows?
Quando constróis uma aplicação .NET MAUI para Windows, o resultado é uma aplicação WinUI. Durante o desenvolvimento, o .NET MAUI oferece uma experiência .NET consistente em várias plataformas, mas gera código específico para cada plataforma nos bastidores. Isto garante que as aplicações .NET MAUI têm um bom desempenho em cada plataforma e proporcionam uma experiência nativa ao utilizador.
Como pode .NET MAUI fornecer APIs nativas de dispositivos em todas as plataformas?
O .NET MAUI oferece uma experiência unificada de .NET em Windows, iOS, Android e macOS. Abstrai mais de 60 APIs específicas de plataforma num único conjunto de APIs multiplataforma, abrangendo áreas como storage, redes e sensores de dispositivos. APIs específicas de plataforma adicionais também podem ser acedidas através da injeção de dependências para fornecer implementações especializadas por plataforma.
Posso começar com o WinUI e depois integrar .NET MAUI se eventualmente quiser focar em cenários multiplataforma?
Neste momento, não. Embora o .NET MAUI utilize o WinUI quando corre no Windows, as equipas que esperam atingir várias plataformas devem começar com .NET MAUI ou React Native para ambiente de trabalho.
A nossa equipa possui fortes competências de desenvolvimento front-end web. Devemos considerar usar o React Native para ambiente de trabalho?
Equipas com forte experiência em desenvolvimento web podem querer considerar o React Native para Desktop. Inclui React Native para Windows e macOS. Com a abordagem "Aprenda uma vez, escreva em qualquer lugar", as competências existentes em JavaScript, TypeScript e React podem ser usadas para criar aplicações nativas para Windows e macOS.
O React Native for Desktop renderiza a interface diretamente para primitivas nativas, oferecendo desempenho nativo e capacidades de plataforma.
Veja a documentação do React Native para Desktop para começar.
Existem outros dispositivos Windows suportados pelo React Native for Desktop?
As aplicações React Native podem ser implementadas em todos os dispositivos suportados pelo Windows 10 e versões posteriores, incluindo PCs, tablets, 2-em-1, Xbox e dispositivos de realidade mista.
O que devo usar se quiser construir aplicações que funcionem em Windows e Xbox?
Se a sua aplicação precisa de suportar Xbox, HoloLens ou IoT, recomenda-se o UWP. O SDK de Aplicações Windows não suporta estas plataformas. Para desenvolvimento de jogos, usa o Kit de desenvolvimento de jogos da Microsoft.
O que devo usar se quiser construir aplicações que funcionem no Windows e no Surface Hub?
Se estiver a direcionar seja para Windows ou para Surface Hub, é recomendado o UWP.
Desenvolvimento híbrido e web
O que são aplicações híbridas e por que razão devo considerar criar uma?
Os aplicativos híbridos combinam o melhor do desenvolvimento de aplicativos nativos e da Web. O seu núcleo é construído usando tecnologias web como HTML, CSS e JavaScript, e está envolto num contentor nativo que dá acesso a certas funcionalidades e hardware nativos da plataforma. Eles também podem ser distribuídos através de lojas de aplicativos.
A principal vantagem é que as aplicações híbridas permitem construir uma única aplicação que pode correr em múltiplas plataformas nativas e na web, reduzindo o tempo e custos de desenvolvimento. Exemplos de plataformas híbridas de desenvolvimento de aplicações incluem:
- Electron para aplicações de ambiente de trabalho
- Ionic para aplicações móveis
- .NET MAUI Blazor Hybrid para aplicações multiplataforma
Como é que construo aplicações web progressivas (PWAs) com sensação nativa em Windows?
Ver Desenvolvimento Web em Windows e Visão Geral do Progressive Aplicações Web.
O que é uma aplicação híbrida .NET MAUI Blazor?
Com .NET MAUI, as aplicações Blazor podem correr nativamente no Windows, iOS, Android e macOS. Isto permite-lhe criar aplicações cliente híbridas que combinam componentes Blazor e .NET MAUI numa única aplicação cliente nativa, com acesso total às capacidades nativas da plataforma.
Saiba mais em ASP.NET Core Blazor Hybrid.
Os componentes web de uma aplicação híbrida .NET MAUI precisam de ser criados com Blazor?
Não. A partir do .NET 9, o .NET MAUI inclui um controlo HybridWebView que permite alojar outras interfaces baseadas em JavaScript dentro de uma aplicação nativa.
Isto permite-lhe alojar aplicações Angular, React, Vue ou outras aplicações HTML/JavaScript dentro de uma aplicação .NET MAUI. O controlo híbrido proporciona interoperabilidade entre C# e JavaScript, pelo que o código C# pode chamar funções JavaScript e vice-versa.
Algum outro tipo de aplicação nativa consegue alojar componentes híbridos do Blazor?
Yes. As aplicações WPF e WinForms também podem alojar componentes híbridos Blazor, permitindo a adição de interfaces web modernas às aplicações existentes. Isto não é suportado para aplicações WPF ou WinForms construídas no .NET Framework.
A minha aplicação inteira precisa de ser híbrida, ou posso misturar componentes nativos e híbridos?
Componentes nativos e híbridos podem ser misturados dentro de uma aplicação. Por exemplo, o núcleo de uma aplicação pode ser construído com componentes .NET MAUI, enquanto componentes híbridos fornecem funcionalidades adicionais. Isto permite combinar o desempenho e as capacidades dos componentes nativos com a flexibilidade e eficiência de custos dos componentes híbridos.
Quais são as minhas opções para construir aplicações web baseadas em .NET que fiquem ótimas nos navegadores modernos no Windows?
As Web apps oferecem o alcance mais amplo de qualquer plataforma de aplicações cliente. Opções para criar belas aplicações web .NET incluem:
- Aplicações ASP.NET Core com Razor Pages
- Aplicações ASP.NET Core MVC
- Aplicações ASP.NET Core Blazor, com opções de modelo de alojamento:
- Blazor WebAssembly (estrutura para desenvolvimento de aplicações web)
- Blazor Server
Os modelos de alojamento Blazor podem agora ser configurados ao nível do componente, permitindo cenários como alojar um componente Blazor WebAssembly numa aplicação Blazor Server.
Consulte a documentação ASP.NET Core para mais detalhes.
Escolha uma abordagem e compreenda os investimentos da Microsoft
Existem tantas opções de framework para construir aplicações direcionadas a Windows! Como decido?
O Windows é uma plataforma aberta que suporta muitas tecnologias. Aqui estão alguns critérios que podem ajudar a escolher uma plataforma:
- Está a priorizar o Windows ou a desenvolver para várias plataformas?
- Que linguagens ou competências já tens — .NET, JavaScript, outra coisa?
- Precisas de acesso a APIs específicas do Windows?
- Qual das capacidades do framework correspondem melhor aos requisitos da sua aplicação?
- Consulte esta tabela para fatores de comparação adicionais.
Para muitas aplicações empresariais, as equipas escolhem frequentemente com base nas competências existentes e no que a equipa se sente mais confortável a usar.
Como escolher a melhor abordagem de desenvolvimento para a minha aplicação web?
Considere o seguinte ao escolher uma abordagem de desenvolvimento para a sua aplicação web:
- O Blazor é recomendado para construir aplicações web front-end com .NET. Permite construir tanto o front-end como o back-end usando .NET, poupando tempo e custos, e é especialmente bom para aplicações empresariais.
- As web apps em JavaScript continuam a fazer sentido se quiseres tirar partido das competências existentes em JavaScript ou se precisares de integrar com bibliotecas ou frameworks JS já estabelecidos.
- As aplicações existentes que utilizam frameworks mais antigos como Web Forms, MVC ou Razor Pages continuam a ser suportadas e podem continuar a ser desenvolvidas e mantidas.
Quem está a construir aplicações com o WinUI atualmente?
Muitos clientes estão criando com a WinUI hoje, incluindo Adobe e Apple:
- Adobe Fresco, uma aplicação gratuita de desenho e pintura.
- As aplicações Apple Music, Apple TV e Apple Devices da Apple foram construídas com o WinUI e o SDK de Aplicações Windows.
A Microsoft também desenvolveu muitas aplicações WinUI, como o Explorador de Ficheiros do Windows 11 e a aplicação Fotos.
Quem está a criar .NET MAUI apps hoje?
Muitos clientes, incluindo a Microsoft, estão a criar aplicações multiplataforma com .NET MAUI. Por exemplo, a aplicação móvel Microsoft Azure é construída usando .NET MAUI.
Veja mais na vitrine de clientes do .NET.
Quem está a criar WPF apps hoje?
A maior parte da interface Microsoft Visual Studio é construída com WPF. O próprio IDE Visual Studio é um exemplo importante de uma aplicação de WPF complexa e de alto desempenho.
Quem está a desenvolver aplicações Blazor atualmente?
O sistema de companhias aéreas FlightPulse da GE Digital utiliza o Blazor para a configuração backend de tudo o que os pilotos veem, levando dados e análises de sensores diretamente aos pilotos para melhorar a segurança e eficiência.
Veja mais histórias de clientes Blazor no site .NET.
Empacotamento, implantação e atualizações
Qual é a diferença entre aplicações que vêm embaladas, não empacotadas e empacotadas com localização externa?
Para definições de pacotes empacotados, não empacotados e empacotados com aplicações de localização externas, veja Visão geral de Implantação. Esse tópico também explica as vantagens e desvantagens de cada opção.
A minha aplicação WinUI vai atualizar-se automaticamente para os utilizadores finais?
Uma aplicação WinUI pode ser entregue através da Loja, de um ficheiro .appinstaller, ou através de um pacote MSI ou setup.exe existente. A Store e o AppInstaller suportam atualizações automáticas para utilizadores finais que tenham as atualizações automáticas ativadas, mas as aplicações MSI/setup.exe devem fornecer o seu próprio mecanismo de atualização.
Posso usar SDK de Aplicações Windows sem usar MSBuild?
Geralmente, não. O WinUI e o SDK de Aplicações Windows exigem MSBuild, razão pela qual Visual Studio é um pré-requisito para desenvolver com eles. Embora tecnicamente seja possível construir aplicações do SDK de Aplicações Windows que não usam o WinUI com outras cadeias de ferramentas, isso não é suportado.
Desempenho e otimização
O que posso fazer para que a minha aplicação de Windows pareça ótima para os utilizadores finais?
Consulte Desenvolvimento de aplicações para Windows - Melhores práticas e performance e fundamentos das aplicações Windows – visão geral.
Compatibility
Os meus utilizadores alguma vez terão de atualizar Windows para usar a minha aplicação WinUI?
Utilizadores com Windows 10, versão 1809 ou posterior, podem instalar aplicações WinUI sem atualizar o seu sistema operativo.
Posso direcionar o Arm64 com a minha aplicação WinUI?
Yes.
Depreciações e migrações
Os UWP / WinUI para UWP estão obsoletos?
Não. O UWP e o WinUI para UWP continuam suportados e continuam a receber correções de bugs, fiabilidade e segurança. No entanto, a maioria das novas funcionalidades e capacidades é adicionada ao WinUI.
Está disponível suporte UWP para .NET 9. Esta opção oferece um caminho de modernização para aplicações UWP usando a versão mais recente do .NET.
Os objetivos do suporte ao .NET 9 UWP são:
- Proporcionar um melhor caminho de migração para programadores que queiram migrar para o WinUI.
- Remova dependências do .NET Native para que os programadores possam beneficiar das mais recentes funcionalidades .NET e C#.
Para mais informações, consulte o artigo do blogue: Modernize a sua aplicação UWP com suporte UWP de pré-visualização para .NET 9 e AOT nativo.
Quando devo migrar uma aplicação UWP / WinUI para o WinUI?
Os programadores de UWP não devem sentir-se pressionados a migrar se estiverem satisfeitos com o UWP e o seu conjunto de funcionalidades — para muitas aplicações, a escolha certa pode ser permanecer no UWP.
As aplicações que queiram beneficiar da mais recente plataforma Windows e dos investimentos em .NET devem considerar migrar para o SDK de Aplicações Windows. Ver Migrar do UWP para o SDK de Aplicações Windows.
Quando é que *não* devo migrar uma aplicação UWP + WinUI para WinUI?
Continua a usar UWP se estiveres a construir para Xbox, Surface Hub ou HoloLens.
Está WPF descontinuado?
Não. O WPF é suportado, recomendado e continua a receber atualizações de funcionalidades. Consulte o roteiro WPF em GitHub.
O WinForms está obsoleto?
Não. O WinForms é suportado e continua a receber atualizações de funcionalidades. Consulte o Roadmap Windows Forms em GitHub.
O Windows Runtime (WinRT) está obsoleto?
Não. WinRT é uma interface binária de aplicação (ABI) que permite a interoperabilidade entre várias línguas. O WinRT é a evolução do COM, e o SDK de Aplicações Windows fornece a maior parte da sua funcionalidade através das APIs WinRT.
Notas de lançamento
Onde posso encontrar notas de lançamento para SDK de Aplicações Windows?
As notas de lançamento mais recentes podem ser encontradas na página What's New .
Conteúdo relacionado
Windows developer