Quais motivos levam um profissional a escolher JAVA?

Ou seja, em um projeto que se inicia, quais os critérios que levam à escolha da tecnologia JAVA como solução? Quais as características desse projeto que estão sendo atendidas com essa tecnologia?

Obrigado

Carlos Rosa

  • Insanidade mental dos responsaveis por definir a plataforma.

rs

Eu vejo como uma vantagem para o Java a grande quantidade de soluções prontas para usar: lib, frameworks e por ai vai (e a maioria com código fonte disponível).
Um outro aspecto é que utilizando uma IDE e frameworks de desenvolvimento ela é bastante produtiva. (e eu já “codei” em python, ruby e php).

EDITADO: A documentação é ótima também.

Sua pergunta responde! Java é uma tecnologia, uma plataforma e não só uma linguagem! Isso significa dizer que sua grandeza proporciona soluções diversas e inimaginaveis!

Um outro argumento para escolher java é o próprio mercado! Só que talves esse não seja um bom argumento, ja que você deve analisar suas necessidades e não a moda da estação(Muitas gente faz isso! Eu comecei a estudar Java assim :P).

Acho que motivos de fato não faltam, como tambem existe outras linguagens que atendem tambem diversos requisitos assim como o java. Porem o que me levou pessoalmente a utilizar foi a similaridade com C/C++ a qual eu ja programava, porem em comparacao com o java, a produtividade era muito baixa. Tambem pelo mercado(Como o zakim falou, levado pela moda ehehhe). Porem acho que vai muito de cada equipe/programador escolher a linguagem, pois acredito que muitas outras tambem possam fazer o que o java faz, entao nao vale ficar batendo cabeça e esperneando tentando provar qual a melhor linguagem, a verdade que é tambem muita questao de opniao pessoal. E na minha opniao, java é A linguagem :slight_smile:

Faço essa pergunta por estar em um processo de definição. Programo com Delphi a alguns anos, praticamente da versão 1 para cá, e estou vendo muito mercado principalmente para as aplicações web (mesmo aquelas migradas do desktop). Então pretendo investir em JAVA para que eu tenha condições de acompanhar essa mudança e levar minhas aplicações comigo. rs

Obrigado pelas respostas.

Carlos Rosa

Ah, também a possibilidade da multiplataforma…claro

Carlos Rosa

[quote=carlosrosa]Faço essa pergunta por estar em um processo de definição. Programo com Delphi a alguns anos, praticamente da versão 1 para cá, e estou vendo muito mercado principalmente para as aplicações web (mesmo aquelas migradas do desktop). Então pretendo investir em JAVA para que eu tenha condições de acompanhar essa mudança e levar minhas aplicações comigo. rs

Obrigado pelas respostas.

Carlos Rosa[/quote]

Não pense em JAVA para qualquer sistema WEB.

É muito importante analisar o tamanho da sua aplicação, quantos usuários conectados, se vai precisar de escalabilidade, talvez clustering e etc. Porque em MUITOS casos, principalmente em sistemas de pequenos e médio porte, um PHP ou RoR é mais produtivo que Java.

[quote=ManchesteR][quote=carlosrosa]Faço essa pergunta por estar em um processo de definição. Programo com Delphi a alguns anos, praticamente da versão 1 para cá, e estou vendo muito mercado principalmente para as aplicações web (mesmo aquelas migradas do desktop). Então pretendo investir em JAVA para que eu tenha condições de acompanhar essa mudança e levar minhas aplicações comigo. rs

Obrigado pelas respostas.

Carlos Rosa[/quote]

Não pense em JAVA para qualquer sistema WEB.

É muito importante analisar o tamanho da sua aplicação, quantos usuários conectados, se vai precisar de escalabilidade, talvez clustering e etc. Porque em MUITOS casos, principalmente em sistemas de pequenos e médio porte, um PHP ou RoR é mais produtivo que Java. [/quote]

Pois é, ManchesteR. A minha necessidade atual é a criação de uma aplicação para controles burocráticos de uma empresa - clientes, fornecedores, contas, estoques, etc - para rodar em um servidor que não está fisicamente na empresa. E também existe a possibilidade de compartilhar a mesma aplicação para empresas diferentes de forma online. São empresas pequenas que irão usar esse serviço. O que ve diz?

[quote=ManchesteR]
Não pense em JAVA para qualquer sistema WEB.

É muito importante analisar o tamanho da sua aplicação, quantos usuários conectados, se vai precisar de escalabilidade, talvez clustering e etc. Porque em MUITOS casos, principalmente em sistemas de pequenos e médio porte, um PHP ou RoR é mais produtivo que Java. [/quote]

A utilização de frameworks como VRaptor, Mentawai, Wicket, Waffle… não trariam toda (ou boa parte) dessa produtividade para o mundo java ?

E eu acho que já na categoria de médio porte, o java se enquadra legal.

Concordo com o ManchesteR, não é qqr aplicação de padaria ou site pessoal que o uso da plataforma java será economicamente vantajosa sobre as plataformas simples…

Muitos projetos de pequeno porte, são atendidos pela solução LAMP (Linux, Apache, MySQL, PHP) de forma eficaz, eficiente e barata.

Java é uma plataforma excelente, mas cuide para não construir um tanque de guerra para descascar nozes.

:thumbup:

Provavelmente então seria o caso, de se usar uma solução LAMP – Linux, Apache, MySQL e PHP – para essa situação!!! Existe atualmente frameworks voltados para o PHP, no sentido de aumentar a produtividade? E permitir, também, aplicações seguras?

Carlos Rosa

[quote=khaoz]
A utilização de frameworks como VRaptor, Mentawai, Wicket, Waffle… não trariam toda (ou boa parte) dessa produtividade para o mundo java ?

E eu acho que já na categoria de médio porte, o java se enquadra legal.[/quote]

Claro que os frameworks trazem produtividade, porém para tarefas simples, um PHP e um RoR são mais simples/rápidos (claro que você deve ter conhecimento para fazer isso).

Hoje em dia é mais fácil achar um servidor LAMP do que um servidor Java.
É mais fácil começar um projeto Rails do que criar um projeto Java (principalmente os projetos frankstein, ou seja, aqueles com milhões de frameworks).
Geralmente programar com linguagens dinamicas é mais rápido do que em Java (apesar que a possibilidade de fazer merd* é grande também).
Não dá para comparar a produtividade (no fator tempo) do Rails com qualquer framework Java existente :slight_smile:

Enfim, se o sistema é pequeno e NÃO irá utilizar a plataforma Java EE de fato, (servidor de aplicação, controle de transação, caching, security e etc), eu não vejo o porque usar Java.

Eu mesmo, alguns meses atrás, tive a possibilidade de criar um sistema simples de contas à pagar/receber e controle de estoque. O sistema deveria ser web, pois iria ser acessado remotamente. Analisando os requisitos (e bem simples por sinal) a melhor escolha foi o RoR (no qual eu tinha um conhecimento razoável). Resultado: em meio período primeiro release estava entrando em produção (sem a parte de interface criada, ou seja, CSS, imagens e etc). E hoje as poucas mudanças/melhorias (faz mais de 1 mês que não mexo no código) são entregues rapidamente.