Escolha a melhor estrutura da IU para um novo aplicativo de linha de negócios
Um dos maiores clientes da empresa de consultoria quer criar um aplicativo de linha de negócios para o setor de saúde. O aplicativo é usado para tarefas críticas em um hospital.
Nesse cenário, discutiremos os requisitos do aplicativo e decidiremos qual estrutura do Windows é a melhor opção para a equipe de desenvolvimento.
Compilação do aplicativo de serviços de saúde
O aplicativo de serviços de saúde é um aplicativo empresarial que se destina a ser implantado para profissionais de saúde, como médicos, enfermeiros e administradores em hospitais. Os principais requisitos nos quais você deve se concentrar para este aplicativo são:
- Aparência e estilo do aplicativo. O aplicativo deve incorporar os componentes de identidade visual de cada hospital, como temas de cores e logotipos.
- Compatibilidade de dispositivos. Os hospitais nem sempre têm o hardware e o software mais recentes, portanto, ter compatibilidade com versões anteriores é importante.
- O desempenho do aplicativo é fundamental. Os hospitais são ambientes de alto estresse, portanto, o aplicativo deve ser responsivo e rápido.
Vamos percorrer todos os critérios de decisão deste projeto e ver como cada estrutura pode ser usada para atender a esses requisitos.
Análise dos critérios de decisão
Nesta seção, analisamos os requisitos do aplicativo de saúde e vemos qual estrutura pode ser usada para atender a esses requisitos. Também analisamos os benefícios e as limitações de cada estrutura e como eles podem afetar a decisão de usá-las para este aplicativo de linha de negócios.
Aparência e estilo do aplicativo
O cliente diz que não é importante que o aplicativo dê suporte às diretrizes mais recentes do sistema de design Fluent. No entanto, ele gostaria de combinar o tema do aplicativo com a identidade visual de cada hospital. Esse estilo deve ser configurável sem redistribuir uma versão personalizada do aplicativo. Tanto o WPF quanto o WinUI podem atender a estas necessidades de temas. O tema também pode ser realizado nos Windows Forms, mas é mais difícil de implementar e pode exigir algumas bibliotecas de terceiros. Como o design do Fluent não é um requisito, a equipe não se limita à seleção do WinUI.
Compatibilidade de dispositivo
Os clientes de serviços de saúde que estão usando este aplicativo têm uma combinação de tipos de dispositivo. A maioria das estações de trabalho hospitalares existentes tem computadores desktop do Windows 10. No entanto, alguns profissionais de saúde acessam o aplicativo em computadores tablet que executam a versão mais recente do Windows. O aplicativo deve ser usado com teclado e mouse, mas também deve funcionar bem com entrada por toque. O aplicativo também deve ser responsivo e rápido em todos esses dispositivos.
O WPF parece ser o mais adequado para esse requisito. O WPF permite que os aplicativos detectem e respondam ao toque gerando eventos quando os usuários tocam na tela. Ele também tem suporte nativo para a caneta eletrônica. Os aplicativos do WPF podem tratar a caneta eletrônica como um mouse usando a API do mouse, mas o WPF também expõe uma abstração de dispositivo de caneta eletrônica que usa um modelo semelhante ao do teclado e mouse.
Aplicativos do Windows Forms são mais difíceis de usar em um dispositivo sensível ao toque. Eles podem ser usados com uma caneta eletrônica, mas isso não é tão fácil de usar quanto o WPF. O WinUI é uma boa opção para dispositivos sensíveis ao toque, mas não está disponível em todas as versões do Windows 10. O WinUI só está disponível no Windows 11 e Windows 10, versão 1809 e posteriores. Os clientes de serviços de saúde têm uma combinação desconhecida de dispositivos Windows 10 e Windows 11, portanto, o WinUI não é a melhor opção para atender a esse requisito.
Conjunto de habilidades dos desenvolvedores corporativos da equipe
A equipe de desenvolvimento está familiarizada com as três estruturas que estão sendo consideradas para este projeto. A equipe tem experiência na criação de aplicativos com WPF, Windows Forms e WinUI, e está familiarizada com as versões mais recentes do .NET e do C#. Os desenvolvedores também estão familiarizados com XAML, para que possam usar o designer ou editor XAML no Visual Studio para criar a interface do usuário para o aplicativo.
Desempenho e capacidade de resposta do aplicativo
Este aplicativo é usado em um ambiente de hospital, que é um ambiente de alto estresse, por isso é importante que ele seja responsivo e rápido.
O WPF é uma boa opção para esse requisito. Os aplicativos do WPF criados com o .NET Framework não têm o desempenho tão bom quanto os aplicativos criados com as versões mais recentes do .NET. No entanto, os aplicativos do WPF criados com o .NET 8 têm bom desempenho e são responsivos. O WPF é uma ótima opção para aplicativos empresariais com várias telas e requisitos complexos de associação de dados. O WPF também tem um conjunto avançado de controles que podem ser usados para criar o aplicativo.
Cenários e opções de implantação
Esse aplicativo deve ser implantado por meio de um instalador personalizado. Ele é implantado para clientes corporativos em computadores desktop que executam o Windows 10 e o Windows 11. O aplicativo deve ser fácil de atualizar com novos recursos e correções de bugs.
Aplicativos do WPF e Windows Forms podem ser implantados usando a Microsoft Store (com MSIX), ClickOnce, Windows Installer ou soluções de instalador de terceiros. Eles podem ser implantados em todas as versões com suporte do Windows atualmente. Aplicativos WinUI não podem ser implantados em todas as versões do Windows 10. O WinUI só está disponível no Windows 11 e Windows 10, versão 1809 e posteriores. Aplicativos WinUI podem ser implantados usando a Microsoft Store (com MSIX), ClickOnce ou soluções de instalador de terceiros.
Escolha da estrutura
Para este projeto, o WPF é a melhor opção. O WPF é uma ótima opção para aplicativos empresariais complexos com várias telas e requisitos complexos de associação de dados. O WPF também tem um conjunto avançado de controles que podem ser usados para criar o aplicativo. Ele também dá suporte aos requisitos de desempenho e implantação.