sexta-feira, 14 de junho de 2019

Deep learning colaborativo: Python e Java


#deeplearning #produção #java #keras
Desenvolvimento em Python, Produção em Java!
Não é preciso muito para concluir que Java é uma ótima opção para entregar aplicações em ambiente produtivo. É mais limpa e possui menos dependências espalhadas que outras linguagens de programação, como Python (que, por sinal, eu adoro). Enquanto Python é excelente para desenvolvimento, prototipação e experimentação, especialmente em ciência de dados e IA, perde um pouco quando pensamos em ambiente produtivo. Por quê?
* Performance: Além da questão do GIL, há vários benchmarks que comprovam o desempenho superior de aplicações Java, como este: https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/python.html;
* Robustez: Com Java, temos pouca entropia de ambiente, isso quer dizer, menos dependências espalhadas e menos fragilidade. Basta que a JVM esteja instalada corretamente, que o resto das dependências pode ser embutida em um uber jar ou um war;
* Segurança: Embora existam decompiladores Java, podemos obfuscar o bytecode e entregar apenas o executável. Em outras linguagens, como Python, ficamos limitados a entregar o código-fonte. 

Nenhum comentário:

Postar um comentário