0

JAVA , C# ou Python ? Ainda prefiro o C !

Leonardo Demetrio
Leonardo Demetrio

Olá pessoal, tudo bem ?


Galera hoje eu vim falar um pouco sobre as linguagens de programação ai no mercado.


No dia a dia vejo muitas pessoas com certa facilidade em algumas linguagens. Isso de certa forma é bom, se você tem facilidade em usar Java ou C# significa que você não tem dificuldade em utilizar um C ou Go, mas pode ter dificuldades em Python e JavaScript.

Esse comportamento é muito comum no pessoal do Back-end indo para o Front-End ou vice versa.


Então vamos começar por ele, que alguns dizem estar na UTI, outros dizem que nunca vai morrer, o JAVA.



O Java é um carinha velho no mercado, ele tem muito mais afinidade com Linux o que faz com que o pessoal do Windows tenha uma certa dificuldade para utilizar, mas não é tudo isso, tem tecnologias mais difíceis como Ruby. Entretanto, o Java tem uma curva muito alta de aprendizado o que faz com que seja maçante para um iniciante ter que consumir todo aquele conteúdo.




Hoje em dia o Java é muito utilizado, mesmo que o C# com .NET 5 esteja crescendo astronomicamente, muitas empresas utilizam ele. O profissional de Java hoje atua tanto no desenvolvimento de novos sistemas como na manutenção de sistemas legados com Java 7 e 8.


O Java hoje é utilizado em:

  • Desenvolvimento mobile nativo
  • Desenvolvimento de sistemas para servidores
  • Desenvolvimento de sistemas web
  • Desenvolvimento de microsserviços


A Leo, mas e Jogos e análise de dados ?


Com relação a analise de dados, eu até concordo que é possível desenvolver sistemas de analise e inteligência artificial com Java, porém não é a linguagem mais aconselhável para isso. Para esses trabalhos, utilizaria o Python e o R!


Quanto a Jogos, eu ja falei e repito. Não, não usaria e não recomendo. Tem pessoas que se aventuram com o Java nos jogos, mas nem mesmo a própria indústria utiliza. Não é compátivel, é lento, não tem uma conversa muito rápida com sistema operacional e o processador em ambientes tridimensionais e de manipulação de malha. Antigamente, muitos jogos utilizavam o Java, naquela época do V3 ou do Nókia, mas hoje os arquivos mobiles .Jar não são mais uma realidade.



Ver a imagem de origem




O próximo cara para a gente bater, é o C# ou C sharp ou C Hashtag.


Bom galera eu sou um Dev .NET e sim tem muita coisa para falar. Hoje em dia o Java tem um espaço muito grande no mercado porque lá trás a Microsoft achou que o HTML não ia dar em nada e não quis criar uma linguagem server side, ai veio o JAVA.


O C# não se difere em algumas coisas do JAVA, ele tem uma curva alta de aprendizado também, mas diferente do Java essa curva não é tão demorada, ela e mais dinâmica. Um outro fator é que o C# tem algumas funcionalidades nativas diferente do Java que tem que ser feito um import, muitas vezes externos.



Hoje em dia, o C# é utilizado para muitas coisas. Muitos sistemas novos estão sendo criados com .NET 5 ou 3.1, mas nem sempre foi assim. Durante muito tempo o mercado cresceu para o lado do Java e os profissionais de C# .NET eram requisitados apenas para manutenção de sistemas legados. Entretanto achar um cara .NET pleno e Senior para recrutadores era um sufoco, isso porque eles são caros.


O C# hoje é utilizado em :

  • Desenvolvimento de Sistemas
  • Desenvolvimento web
  • Desenvolvimento de microsserviços
  • Desenvolvimento de ferramentas Desktops
  • Desenvolvimento mobile
  • Desenvolvimento de Jogos


Hoje é possível fazer quase tudo em C# !


Ok Leo, mas onde você não utilizaria C# ?


Olha, eu não utilizaria C# em desenvolvimentos Mobiles, para isso eu deixo o Java que é nativo para o Android e o JavaScript. Não utilizaria o C# em desenvolvimento de analises de dados e nem em inteligência artificial. Assim como Java, esse processo é muito lento.


Entretanto, diferente do Java, o C# é bom para o desenvolvimento de games e pega nativamente no windows. Isso quer dizer que eu posso fazer tudo no sistema operacional Windows sem utilizar nenhuma outra ferramenta além do Visual Studio.

https://th.bing.com/th/id/R.2f0df1bb2c7adc92061d9eae9134da81?rik=LwEhntvnwBSW4Q&pid=ImgRaw&r=0




Se me perguntasse, qual linguagem você escolheria para utilizar pelo resto da vida ? Eu responderia Python em primeiro lugar!


O Python é uma linguagem de fácil entrada, super utilizada na análise de dados e no desenvolvimento de inteligência artificial. Se você tem um Linux, o Python 2 já vem nativo na sua máquina basta usar ! No Windows o Python também funciona e muito bem !

Podemos utilizar ele no Terminal, no VScode, no Sublime, no Bloco de notas, online e em outros lugares.


O Python também tem outras vantagens como seu framework WEB o Django. Gente, o Django é leve, rápido são apenas algumas pastas formando um MVC e você não precisa instalar um Pycharme da vida para isso, só entender como funciona e subir seu sistema web.


A curva de aprendizado do Python é muito rápida e olha eu eu sou um Dev .NET, mas Python tem um lugar no core! Tem pessoas que aprendem Python básico e orientado a objetos em 1 a 2 meses. Isso é equivalente a curva de aprendizado de linguagens como JavaScript, GO e C. É uma linguagem muito boa para iniciantes!



Hoje o Python é utilizado em projetos com ETL, Inteligência artificial, analise de dados, Web Scraping e outros.


Ok Leo, mas onde você não utilizaria Python ?


Vamos lá, o Python é fácil, mas não não é maravilhoso. Eu não utilizaria Python para desenvolvimento de microsserviços complexos, talvez eu crie um microsserviço em um container de Django, mas seria algo isolado, isso porque nesse sentido o Python não é performático. Para tarefas robustas como essa eu recomendo o JAVA e o C#.

Outra coisa, tem gente que consegue criar Jogos com Python e aplicações Mobile utilizando códigos semelhantes ao PySimpleGui e o Kyvi. Isso é muito legal para testar o mesmo vale para as outras linguagens, porém eu não recomendo, hoje temos linguagens e ferramentas dedicadas para isso. O Java ou o Js utilizaria para Mobile e o C# ou C++ para Jogos.


Entretanto, o Python conversa muito bem com o sistema operacional igual o C. Isso faz com que o Desenvolvimento de Engines ou plataformas de modelagens 3D como blender seja possível, mas isso não quer dizer que a programação do Jogo é feita em Python, apenas a ferramenta.




Hora dele, o Pai de todas as linguagens, o C!


O C foi uma das primeiras linguagens empregadas no mercado e que a partir dele todas as outras surgiram. JAVA, C#, PYTHON, GO, JAVASCRIPT ......... e vai a lista. Todas surgiram a partir do C.


Saber C de forma mais profunda te da a vantagem de saber como a linguagem conversa com o sistema operacional, além de entender como funciona a alocação de memória e o garbage collector do C# e do JAVA, já que aqui você tem que fazer ele na mão.


Mas não se engane, o C é poderoso, mesmo não sendo tão utilizado hoje, ele continua sendo um carinha teimoso. Diferente do Java o C não lida muito bem com os sistema de concorrência dos processadores, por isso criaram GO. O C ele não fala se seu código está errado, ele só pergunta se tem certeza que deseja rodar o código e trava seu banco de dados caso esteja errado. Isso força o DEV a fazer certo kkk. Porém o C e o C++ são utilizado no desenvolvimento de Engines de games como Unreal e Unity, existem pessoas que criam sistemas de Raytracing com C ou C++ puro no terminal do Windows ou Linux de tão potente que ele é!



O que podemos tirar disso :


Não ame a linguagem.


Cada linguagem se adequa a um tipo de situação, claro , você deve se especializar em algo, mas não fique fissurado. Geralmente quem gosta de Java não toca em C# , ou que usa Js não toca em Python e vice versa. Porém se seu cliente utiliza uma outra linguagem, você vai deixar de aprender algo novo e ganhar um dinheiro a mais só porque você não gosta de linguagem X ?


Então galera, não tenha uma linguagem de estimação. Cada linguagem resolve um problema diferente e não deve haver uma briga para ver quem é melhor.


Bom galera é isso, fiquem com Deus e até o próximo artigo.


0
0

Comentários (8)

1
Isac Vidal

Isac Vidal

02/08/2021 15:23

Parabéns pelo artigo Leonardo! Muito bom!

1
🏂⚡️Eros M.Lima

🏂⚡️Eros M.Lima

02/08/2021 12:35

Top Leonardo, muito bom!!!

2
Cleber Correia

Cleber Correia

02/08/2021 08:05

Legal seu artigo Leonardo, valeu por compartilhar .

2
Ronni Souza

Ronni Souza

01/08/2021 21:46

Curti demais o seu artigo Leonardo, a primeira linguagem que eu tive contato e foi a que mais me adaptei(amor a primeira vista kk), foi Csharp, logo atrás javascript, porém faço uns hello world da vida em python e C, kkkkk. Valeu pelo artigo!

2
José Júnior

José Júnior

01/08/2021 19:47

Já eu prefiro Rust, por causa da utilização em blockchain.

2
CARLOS SILVA

CARLOS SILVA

01/08/2021 20:14

Que artigo TOP Leonardo, parabéns pela dedicação e empenho. Só gostaria de ressaltar que no quesito que foi mencionado sobre performance lente para análise de dados com Java e C# é lento. Existe soluções no mercado para ambas as linguagens que se mostram até duas x mais veloz que Python e com volume de dados na casa dos petabytes.

1
Maiara Almeida

Maiara Almeida

02/08/2021 04:04

Excelente artigo Leonardo.

Eu tive meus contatos iniciais com JavaScript e Python, além de R para alguma estatística.

Dentre os cursos que eu tenho feito para me aprimorar e fazer uma mudança de carreira, tenho um professor muito bom que sempre diz "Ame a solução do problema, não a ferramenta" .

Tenho o mesmo pensamento para linguagens.

Estou nesse mundo para ir aprendendo, talvez ser "poliglota" em tecnologia ;).

Obrigada pela dedicação, adorei o artigo.

1
Juliano Santos

Juliano Santos

01/08/2021 20:33

Muito bom seu artigo Leonardo! Embora eu prefira o Python atualmente, também acho que o fato de estar sempre aberto à novas linguagens ajuda com as mudanças que vão ocorrendo ao longo do tempo. Parabéns mano, artigo top!!!

Analista de sistemas apaixonado por tecnologia, marketing e games

Brasil