C# vs JavaScript(ou outro) no ambiente Linux

Perguntas para resposta rápida:

Para os devs que programam no Linux:

  • Qual linguagem de programação vcs utilizam para desenvolver apps desktop?
  • Posso continuar no C# que não me arrependerei por falta de ( suporte / recursos / oportunidades) no Linux?
  • Qual linguagem de programação indicam?

História completa:

Quando iniciei na carreira de programador, não conhecia o que era a vida, nem ter sonhos… digo, não conhecia o linux :smile:… e me dediquei muito ao aprendizado de diversas linguagens de programação, porém a que mais se encaixou para mim foi o C#.
Contudo, o tempo passou, não pude me profissionalizar de forma efetiva em nenhuma tecnologia por conta da escola, mas agora estou disposto à recomeçar, mas estou apegado demais ao linux e me pego no seguinte dilema:

  • Aprender uma linguagem e uma tecnologia nova, o que vai demorar…
  • Ou termino de me profissionalizar com o C# e suas tecnologias Microsoft (que tenho mais afinidade)

Sei que o C# tem a possibilidade de desenvolver para o Linux, com a ferramenta Monodeveloper por exemplo, mas tenho o receio de não ser a melhor tecnologia para isso…
Conheço pouco para dizer com certeza, mas minha experiência com o JavaScript (que ao meu ver parece uma opção muito optada pelos dev) foi horrível, e me assusta todo aquele ecossistema complexo do JavaScript…
Por isso recorro à vcs, Devs opensource, para me dizerem:

  • Qual linguagem de programação vcs usam?
  • Preciso mesmo abandonar o C#?
  • É muita frescura minha com o JavaScript, e posso enfiar a cara nesse ecossistema?

(Desculpe se fiz algo errado nesse tópico, é porque eu estou realmente perdido :disappointed_relieved: …)

1 curtida

Para Linux seria melhor outra lang, o .net core está vindo com tudo desde 2016 se não me engano, mas não tem o forms como no Windows e não sei como é o desenvolvimento desktop com C# no Linux. (Vale dar uma pesquisada a mais e não deixar totalmente de lado)

O JS em questão você irá utilizar provavelmente o Electronjs, que tem o Discord, Rambox e entre outros apps, podem te falar que pesam ou outras coisas, mas no final o usuário comum mesmo não fica olhando quanto de ram consome ou algo do tipo. Não irá ser “nativo”, porém o JS irá lhe proporcionar além da criação de apps, o desenvolvimento de sites e afim.

1 curtida

Interessante, mas também queria ouvir a opnião de outras pessoas pra ter uma base maior, além disso, sobre outras linguagens, como Python… é uma boa?

Tudo depende do que você desejar fazer, por aprender é bom como existe também Ruby e entre outras langs para fazer scripts.

Caso queria seguir uma carreira, tem esse Roadmap para auxiliar.

1 curtida

Sou desenvolvedor de .NET Web, o .NET core está funcional para Linux, compilando nativamente, tive alguns problemas para rodar o debugador no Linux com o vscode, mas tirando isso, não tive maiores problemas. Para desenvolver para Desktop, você irá utilizar o GTK ou QT para construção das interfaces, já que o Windows Forms obviamente não existe. Sei da existência de IDEs de construção de interface em ambos os toolkits, mas não sei como é a integração com o C# nelas, tirando isso, as chamadas de recursos nativos deve manter a mesma sintaxe que programando para o Windows, com algumas ressalvas.
Agora se você quer 100% de suporte garantido, independente das soluções da Microsoft, o NodeJS realmente é a melhor solução para esse caso, sem falar que a forma de desenvolvimento é igual tanto pra Windows quanto para Linux, o problema fica no fato de não ser um programa nativo, tirando o máximo de performance do computador, mas se não for esse seu foco, vai fundo.

Uau, muito legal esse mapa que fizeram, deu pra notar o quanto falta para aprender, e vai me servir muito como um direcionador de estudos, Valeu!

Muito boa sua resposta

Muito obrigado pela atenção que deram à este post, peço desculpas por não ter respondido antes… não tive muito tempo essa semana… Mas gostei muito de ouvir suas opniões :+1:

1 curtida

Trabalho com .net web e no meu serviço usamos visual studio. Em casa uso Ubuntu e com ele vscode, instalei pelo snap o novo .net5 e no ubuntu é possivel rodar webapp que nem no windows. Preciso reinstalar o sqlserver pelo docker, sim é possivel também. Infelizmente o visual studio community edition não funciona no linux porem há solução Rider da Jetbrains pena que ele é trial e sua licença por causa do dolar fica lá pra 600 reais por ano. Além do c# estou experimentando o flutter e o nodejs no computador de casa usando o vscode.

1 curtida