Ambiente de desenvolvimento JAVA: IDE

Eu estava lendo meus feeds e reparei em um post do Urubatan sobre a montagem de um ambiente de desenvolvimento web usando o Eclipse.

Teve, mais uma vez, uma discussão no RioJUG, sob o título Aprendizado Java e a tempestade de pacotes, que tentava levantar o que era necessário usar para programar em Java. Dentre outras questões, uma grande recordista de flamewars é:

Qual o programa para desenvolver em Java que eu devo usar?

Essa é a principal desvantagem para os iniciantes de Java que vieram de outras plataformas. Principalmente o pessoal que vem de plataformas que tinham poucas opções: Visual Basic, Delphi, Centura/SQL Windows, entre outras.

Por exemplo, até o VisualBasic 6, a IDE era a fornecidada pela Microsoft, para conectar com o banco de dados tinha o ADO(que não era uma opção, mas uma evolução do DAO), para fazer um sistema desktop bastava arrastar uns widgets para o formulário, para fazer um sistema web tinha o ASP e ponto. Nada de escolhas.

Em Java, qualquer coisa que eu queira fazer eu tenho que escolher entre as opções existentes, e são umas duas ou três opções para cada trabalho, ainda tem a questão da IDE: Eclipse, NetBeans, IntelliJ IDEA, JDeveloper…

Nada em Java é único. Até aplicações desktop tem opção: Swing, SWT.

Comecei trabalhando com o JBuilder. Usei da versão 6 até a 10. Gostava muito. Mas, graças a ele, eu não sabia montar um WAR(!), fazer o deploy no tomcat(!!) ou levantar o servidor(!!!).

Já testei o NetBeans, acredito que não tenha me agradado pela familiaridade que eu já tenho com o Eclipse.

Eu vivo lendo, de quem usou o IntelliJ IDEA, que ele foi feito por Deus para construir o Universo. E só por isso, Ele, conseguiu realizar o trabalho em 6 dias. Dada a produtividade da ferramenta.

Atualmente eu uso o Eclipse com uma lista particular de plugins.

Acredito que seja importante dar o mesmo valor a estabilidade da IDE que é dado para qualquer aplicação em produção. Por isso estou mantendo a versão 3.2.2, isto é, ainda não atualizei para a versão 3.3.

  • Eclipse Platform: A plataforma de desenvolvimento. Só é necessário baixar o Platform Runtime Binary.
  • JDT – Java Development Tools: Plugin para desenvolvimento com Java. Sim, o Eclipse não é só uma IDE para desenvolvimento Java. Baixe o JDT Runtime Binary.
  • PDE – Plugin Development Environment: Usado para criar plugins para o eclipse. Mesmo que não seja sua intenção, alguns plugins só funcionam com o PDE instalado. Baixe o PDE Runtime Binary.
  • WTP – WebToos Plataform: Eu uso esse plugin para, praticamente, tudo que faço com interface web. Web Tools Platform (WTP, JST and WST combined), que é a versão Runtime deste plugin. Baixa, também, o modelo JEM. Não, não sei para o que serve. Mas o WTP precisa 🙂
  • Eclipse Modeling Framework (EMF): É uma dependência do WTP. Procure por “2.3.1 Maintenance Builds” e baixe:
  • GEF – Graphical Editor Framework: Dependência do WTP. Neste caso o nome da pacote é Runtime.
  • DTP – DataTools Plataform: Dependência do WTP. Procure o DTP 1.5 End User (No source or JavaDocs), que é a versão Runtime.
  • Hibernate Tools: Estou usando a versão 3.2.0 beta9. É obrigatório se você estiver usando o Hibernate ou o JPA. Você não usa? Tá zoando, né? Isso dá outro post…
  • Subversive: Cliente para o Sistema de Controle de Versão Subversion.
  • Clay: Plugin para modelagem relacional com suporte a engenharia reversa.

Cada um desses plugins possui, pelo menos, 2(dois) tipos de pacote:

  • SDK: Versão com os arquivos executáveis, o código-fonte, o JavaDoc e documentação. É muito útil para quem quer modificar o plugin, seja corrigindo bugs, seja incluindo funcionalidades;
  • Runtime Binary ou Plataform: Está versão inclui, apenas, os arquivos executáveis e a documentação ensinando como usar o plugin.

Sempre que baixar um desses plugins, dê preferência aos pacotes do tipo Runtime Binary/Plataform, assim você economiza banda de internet(portanto, tempo de download) e espaço em disco.

Eu tenho preferência por fazer a interface editando o código, mas não sou masoquista, sem funcionalidades como completr código, entre outras, não rola.

No trabalho eu a interface é desktop, feita em Java com Swing e tenho usado o JFormDesign(não recomendei por ser pago). Nos freelances eu uso interface web com HTML. Portanto um visualizador tanto de Swing quanto de HTML/JSP-que-não-precise-do-Tomcat-iniciado me economizaria um bom tempo no dia. =D

Lembrando que o foco não é usar os plugins com nome legal, mas os que realmente aumentem minha produtividade, você teria uma sugestão para estas lista? Algum que vocês removeriam da lista? Algum que eu não uso, mas deveria?

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s