C# ou Java? - ME AJUDEM NESSA PLS!
Boa noite a todos, decidi aprender uma nova linguagem e estou em dúvida entre Java OO e C# por serem linguagens bem parecidas, mas afinal qual a diferen ça entre elas? qual afinidade de cada? e qual é a melhor para aprender?
C#.
Te ajudou? Eu espero que sim. Mas eu acho que você deveria usar um critério melhor para decidir. Sempre terá alguém que vai aprender alguma coisa para te convencer o que ela deseja que você faça, não o que é bom para você. Por isso não vou investir muito nisso, se quer escolher de forma tão frágil, pra mim tanto faz o que escolher.
Eu dei uma resposta mais completa: https://pt.stackoverflow.com/q/110142/101.
Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).
No começo podem ser parecidas, pois foram influenciadas pelo C++, mas são bem diferentes na medida que se especializa.
Para dizer sobre, em vez de refazer algo que já foi bem feito, prefiro linkar aqui videos ótimos para melhor construir a visão sobre, do canal Codigo Fonte TV:
Eu sou suspeito para falar pois sou Javeiro. C++ e Java são tão bons que estragam, são tantas frameworks, ferramentas, etc. que acaba surgindo muitos "dialetos" por assim dizer, trocar experiência está ficando cada vez mais difícil. O bom do C# é que todo mundo fala a mesma língua, MS tem expertise em criar softwares fáceis de usar, tem o VS Code, copilot, etc. galera do mundo C# tem foco, é como um raio laser de alta intensidade, pode ver o Windows e o Linux, galera do Linux é muito desfocada sempre discutindo qual distro é melhor, troca troca de distro, galera do Windows não perde muito tempo discutindo isso. Já trabalhei com C# e é bem tranquilo e "fácil". Java está mais de boa, mas as empresas estão presas na versão 8 e agora que estão migrando para a 11, e isso é uma dor de cabeça.
Na versão mais atual dá para escrever
void main(){
}
E tem muitas outras funcionalidades, como: Melhor concorrência entre as threads, melhor escopo das variáveis, melhor mecanismos de encapsulamento, adeus ao suporte 32-bits, melhor desempenho, amadurecimento de record (chega de um monte de get e set), etc.
Eu sou do time C# e sinceramente tanto faz. Tente não depender das opinioes de terceiros para decidir isso, e se for só por diversão faz o mesmo sistema nas duas linaugens e ve qual vc gostou mais. Dito isso, os motivos de eu gostar de c#: Poucas ferramentas mas muito bem adotadas pela comunidade (EntityFramework, Visual Studio, FluentValidations, MassTransit, entre outras). No mundo .net eu tenho a sensaçào que em qualquer projeto que eu trabalho estao sendo usadas as mesmas libs, e todas resolvem oque devem resolver de forma muito certeira. No mundo java existem várias otimas ferramentas, mas muitas repetidas e que me passam a impressao de que cada um gosta da sua. Por isso acredito que C# seja mais facil para iniciar.