Páginas

16.10.10

Ambientes Integrados de Desenvolvimento (IDEs)

Comentários Inúteis

Boa noite, mais de um mês depois do meu último post venho atualizar o blog.
Nada melhor do que um fim-de-semana sozinho, depois de cansar de fazer minhas obrigações e mesmo assim não conseguir dormir para eu conseguir o tempo que tanto tem me faltado para trazer postagens para cá.
Bom, hoje irei aproveitar um texto que tive que fazer para minha Iniciação Científica sobre IDEs, com algumas alterações, tornando o texto em algo mais informal, aproveitando a liberdade que um blog nos dá.




IDEs - Ambientes Integrado de Desenvolvimento

O IDE (Integrated Development Environment), é um conjunto de ferramentas que auxiliam o desenvolvimento de softwares, aumenta a produtividade do desenvolvedor, diminuindo o tempo de desenvolvimento.
Irei falar aqui a respeito de dois IDEs gratuitos, os quais tive muito contato na faculdade nas disciplina de programação Java: o Eclipse e o NetBeans.


Eclipse

O Eclipse é uma plataforma que possui um conjunto de ferramentas para desenvolvimento em Java (JDT - Java Development Toolkit) – que funciona como o Java IDE – e um ambiente de plug-in (PDE – Plug-in Development Environment). Isso nos permite escrever e executar os programas em Java, como também adicionar plug-ins desenvolvidos especialmente para essa plataforma.
O mais importante é que a plataforma prove de maneira bem definida que diferentes plug-ins trabalhem juntos, assim novas funcionalidades podem ser adicionadas facilmente ao seu ambiente.
Peças chave do Eclipse
A característica que mais distingue o Eclipse dos demais ambientes de desenvolvimento é sua extensibilidade. Pois ele possui a SDK (Software Development Kit), o ambiente de desenvolvimento Java propriamente dito, no centro da plataforma e em sua volta pode-se construir vários produtos ou ferramentas, chamados plug-ins.
Mas você não precisa desenvolver novas ferramentas para facilitar a usabilidade do Eclipse. Ele próprio já traz um ambiente totalmente caracterizado de desenvolvimento Java, incluindo um nível de depurador de fonte. Além disso, por ser muito popular e open source, muitas ferramentas especializadas (desenvolvidas para o Eclipse, usando o Eclipse) já estão disponibilizadas no site e também no serviço “Install New Software” disponível no Eclipse a partir da versão 3.5 Galileo.
Em contrapartida a todos os atrativos do Eclipse temos a ausência de uma ferramenta que permita o desenvolvimento de interface gráfica (GUI – Graphical User Interface). O Eclipse, em seu SDK, não permite o desenvolvimento de GUI através do uso de componentes pré definidos, de maneira intuitiva, como encontramos no NetBeans. Porém a grande comunidade de usuários tratou de desenvolver alternativas, dentre essas alternativas a mais confiável atualmente é sem dúvida o VEP.
VEP ou Visual Editor Project é o primeiro pacote de classes para um construtor de GUI open-source desenvolvido para o Eclipse, extensível para Swing/JFC e SWT/RCP. Seu objetivo é promover a criação, evolução, a promoção da plataforma Eclipse Visual Editor, e cultivar ambas as comunidades open source e um ecossistema de produtos complementares, recursos e serviços. Em particular, o VEP pretende ser útil para criar construtores do GUI para outras linguagens como C/C++ e conjuntos de widget alternativo, incluindo aqueles que não são compatíveis com Java.


NetBeans

O NetBeans é um ambiente de desenvolvimento integrado disponível para Windows, Mac, Linux e Solaris. O projeto NetBeans consiste em um IDE de código aberto e uma plataforma de aplicativos que permite aos desenvolvedores criar rapidamente aplicativos Web, empresariais, móveis e de área de trabalho utilizando a plataforma Java, bem como JavaFX, PHP, JavaScript e Ajax, Ruby e Ruby on Rails, Groovy e Grails e C/C++.
O NetBeans IDE está atualmente na versão 6.9.1, com suporte a JavaFX . Esta nova versão apresenta o JavaFX Composer, uma ferramenta de layout visual para desenvolver aplicativos de GUI JavaFX, semelhante ao construtor de GUI Swing para aplicativos Java SE.
Peças Chaves do NetBeans
É evidente que o ganhador de pedidos do NetBeans é a ferramenta de layout para desenvolvimento de GUI. Essa ferramenta facilita e economiza em muito o trabalho de qualquer programador, permitindo que esse saiba como ficará sua interface antes mesmo de finalizar seu desenvolvimento.
A visão do projeto no NetBeans é do tipo WYSIWYG (What You See Is What You Get – tração livre: O que você vê é o que você tem), permitindo a inclusão e manuseio dos elementos do formulário com o uso de drag-and-drop (do inglês: arraste e solte).
Todos os elementos do formulário são organizados com o auxilio de um gerenciador de layout chamado GridBag e há também um botão de visualização para mostrar o painel gerado em uma simulação do JFrame.
Na verdade o que o NetBeans faz é permitir a inclusão dos componentes utilizando o layout AbsoluteLayout, pois esse permite posicionamento livre dos elementos, e depois ele rearranja os elementos de forma mais padronizada utilizando o GridBag. Esse por sua vez divide o formulário em células, onde cada elemento é posicionado numa célula. Isso dificulta um pouco o manuseio dos elementos, mas ainda é vantajoso se comparado com o Eclipse. Pois no GridBag ainda temos propriedades que podem ser definidas e seu uso é muito mais fácil.
Porém muitos programadores ainda preferem o uso de outras ferramentas para o desenvolvimento da interface gráfica, na maioria das vezes eles optam até mesmo para o desenvolvimento manual da GUI. Isso tudo porque o NetBeans ao facilitar a vida do programador com a criação de interfaces, dificulta a manutenção e personalização do código gerado.
Essa dificuldade é graças ao código carregado que o NetBeans gera nessa brincadeira. Carregado no sentido de que são geradas muitas linhas de código somente para incluir um JButton dentro de um JFrame. O que pode ser resolvido com seis a oito linhas de código implementadas pelos usuários, passa para vinte a vinte e cinco linhas geradas no NetBeans.
Não esquecendo que esse é um exemplo patético e a complexidade e dificuldade de manutenção do código aumentam conforme a quantidade de componentes utilizados e suas ordenações.


Finalizando

Eu estive procurando muito sobre o assunto, e vi que é muito difícil alguém se posicionar nessa guerra entre os IDEs. A não ser que você tente tirar a dúvida na comunidade do Eclipse, ou em uma comunidade do NetBeans. Com certeza verá muitos palavrões sobre o IDE concorrente.
Mas para uma simples ajuda e posicionamento, digo, em primeiro lugar, se você é novato, do tipo que ainda não sabe nem o que é java direito, programe no notepad ou similar. Se você já passou dessa fase, possui algum conhecimento de bibliotecas do java, das classes que precisa e como usar essas classes, bem você já pode usar um IDE, dai a conversa é outra.
Por experiência própria, aconselho aqueles que não possuem muito conhecimento em gerenciador de Layout, ou que precisam desenvolver uma aplicação com interface gráfica muito rápido que use o NetBeans. O lixo e a complexidade que ele agrega no seu código, mesmo sendo ruim, não é nada comparado ao trabalho e ao tempo que vc vai gastar para aprender a fazer uma tela tão bonita, como poderia fazer nele em algumas horas.
Porém procure estudar sempre, aprenda sobre os gerenciadores de layout, e vá aprendendo a utilizar o Eclipse com o passar do tempo. Essa transição, quando completa, irá dá um upgrade nos seus código e você poderá dizer que é um programador de verdade.


Neste post foram utilizados

Tese:
LEITÃO, MARGALHO. Comparação de ferramentas para implementação de Web Services. 2007.
Livros:
Deitel. Java – Como programar e Gallardo. Eclipse In Action
Sites:
Editando código fonte Java, Eclipse Plugin Development Tutorial, Visual Editor Project, Informações sobre o NetBeans e Java GUI builders.


Um comentário:

  1. Muito legal! Realmente, eu prefiro o NetBeans ainda, pela facilidade. O Eclipse dificulta algumas coisas, talvez seja pelo costume mesmo.
    Muito bom o texto :)

    ResponderExcluir