Casa > O > O Que É Melhor, Java Ou Python? E Como?

O que é melhor, Java ou Python? E como?

Que problema você está tentando resolver?

Se você precisar de um script rápido, Python é uma linguagem incrível.

Se você precisar de um sistema grande, então Java também é uma linguagem incrível.

Se você precisar escrever um serviço web rápido que fale com um banco de dados, faça boas escalas, se autentique corretamente, etc. e só tem que cuspir JSON, ele vai variar. Você será feito mais rápido no idioma que você já conhece. Se eu tivesse que escolher, eu o escreveria em Java, porque essa é a linguagem que eu já conheço. Eu usaria frameworks e bibliotecas como a Spark para definir rapidamente minha API, usaria o HikariCP para obter uma conectividade DB mais rápida, juntando conexões e reutilizando-as, então eu as transformaria em JSON com Jackson, e eu teria um MVP funcionando.

Então eu adicionaria SSL, usaria JWT para armazenar suas informações de login, e faria a Coisa Razoável padrão e adicionaria informações de login ao banco de dados (você sabe, não armazene senhas em texto puro, use funções de hash criptografadas seguras, etc.) em outra mini-iteração.

Python tem truques similares, mas olhe o StackOverflow: A forma Pythonic Way of a Connection Pool é usar a SQLAlchemy. ( Qual é a melhor solução para pooling de conexões de banco de dados em python? ) Certo. Claro. Nós só queremos despejar algumas linhas como JSON, mas acho que ainda devemos usar um ORM completo... Python * tem coisas ótimas, mas não me entenda mal. Ele tem a seriação/deserialização JSON na documentação jsonpickle - documentação jsonpickle 0.8.0, por exemplo. Eu não estou aqui para intimidar Python, no entanto.

Eu direi que onde o Java brilha é quando você quer pisar um pouco fora da caixa. Não gosta muito de Hibernate? Escreva SQL e faça-o você mesmo, ou use uma das ORMs alternativas. Conexão de pooling? Há várias opções para escolher, incluindo o HikariCP e um monte de opções erradas. Há mais de uma boa maneira de fazer as coisas em Java, e tudo depende de você e sua equipe terem uma boa arquitetura em mente quando você faz suas escolhas.

tl;dr: Não, ambos têm seus pontos fortes e fracos

De Roderich

Qual é o custo de uma ronda de artilharia? :: Qual é a percentagem de oxigénio na água? Como é medida?