APLICAÇÃO DESKTOP RODAR EM MAC, LINUX E WIN

NETMANIA 09/07/2022 12:07:31
#500190
Bom dia.

Onde eu trabalho as máquinas rodam Ubuntu, MacOS e Windows e vou ter que desenvolver uma pequena aplicação que tenha que rodar nesses tres sistema operacional (desktop). Tem algum jeito de compilar para fazer rodar nesses tres ambientes? Lembro que no começo tinha o projeto Mono que permitia, só que a pessoa tinha que fazer o código específico para rodar no .Net Framework e outra para rodar no Mono.

Obrigado pela ajuda.
LEANDROVIP 11/07/2022 03:11:23
#500193
Uma alternativa é voce criar uma aplicação usando HTML, CSS, JS (ou via qualquer framework) e "envelopar" isso para ser utilizado em qualquer Desktop via Electron

[]'s


Edit: Correção ortográfica apenas, rs;
OCELOT 11/07/2022 09:11:08
#500194
Voce vai precisar usar algum framework específico para isso, então nada de Windows Forms.

No geral voce ainda vai precisar fazer uma build pra cada sistema que quiser dar suporte, mas é possível reaproveitar quase tudo de um para o outro, só que pode ter alguns detalhes que voce pode ter que fazer específico para cada plataforma, isso vai depender de suas necessidades.

Para fazer isso com C# dá para usar o Xamarin Forms, o suporte dele a MAC é nativo dele, já para Windows e Linux ele tem suporte fornecido pela comunidade, então nem tudo pode funcionar em todas as plataformas, mas no geral é possível usar ele pra criar um programa assim, no Windows ele usa WPF e no Linux GTK#, para o MAC acredito que seja a interface nativa dele, por padrão ele gera programas com o visual nativo em cada plataforma.

Outra alternativa é o Uno Platform, é parecido com o Xamarin Forms, e teria também o MAUI, porém o suporte a ele ainda está apenas na versão preview do VS.Net

Hoje eu uso o Xamarin Forms para fazer um aplicativo que roda no Android e no Windows, só não fiz ele rodar no Mac e no Linux por não ter necessidade, se precisasse eu teria apenas que acertar a parte que é específica de cada plataforma, mas não precisaria tocar em nenhuma tela pra isso, mas futuramente estou pensando em migrar para o Uno Platform, como eles aproveitaram toda a parte do UWP o suporte do VS.Net pra ele é muito bom, o Hot Reload eu diria que é melhor do que o do Xamarin Forms que eu nunca consegui fazer funcionar, com o Uno Platform a ideia é desenvolver primeiramente em UWP para Windows e então compilar a versão de cada plataforma, claro que se necessário ainda se pode ter códigos específicos para cada plataforma.
NETMANIA 11/07/2022 13:52:11
#500196
Citação:

:
Uma alteranativa é voce criar uma aplicação usando HTML, CSS, JS (ou via qualquer framework) e "envelopar" isso para ser utilizando em qualquer Desktop utilizando Electron

[]'s



Outra solução seria o Python para WEB já que o sistema da empresa é desenvolvido nessa linguagem, só que como ainda lembro um pouco de C# para desktop, pensei em fazer assim. Na minha equipe tem dois funcionários que usam Windows e um Ubuntu, ai que veio a origem da pergunta, projeto vingando nas outras unidades da empresa, ai a salada aumenta para MacOS.

Mas vou pensar no Electron e voltar estudar um pouco de Java Script.
Tópico encerrado , respostas não são mais permitidas