Diferenças Eclipse e NetBeans

112 respostas
_fs

Após a última discussão Eclipse x NetBeans resolvi fazer uma comparação breve entre ambos.
Tentei ser o mais impessoal possível, evitando coisas como "eu prefiro verde, então o Eclipse
que é verde é melhor". Falhei em dois ou três pontos neste aspecto.

Para o breve teste, baixei a última versão do Eclipse 3.2 rc2 (a 70kbps do mirror puc-rio) e a
última versão do NetBeans 5.0 (a 20kbps do site do NetBeans).

Entendam que de forma alguma quis fazer uma comparação oficial, caso a caso. Foi apenas um breve
teste de features mais usadas no dia-a-dia trabalhando com a IDE como o editor, compilador e
debuger, e também uma comparação das opções de configuração. Não fiz comparações com plugins,
apenas o que vem built in com cada IDE.

Não desejo ver replies assim: "ah, mas isso com um plugin xyz dá para fazer melhor".
Pois em última análise, é possível fazer qualquer coisa ao adicionar plugins.
Também não desejo replies assim: "ah, mas quem precisa de tanta configuração? Isso é
frescura". Opções de configuração a mais nunca são um problema.

Tenho certeza que falhei em alguns pontos por falta de conhecimento sobre o NetBeans, por favor
apontem os erros para que possa editar o tópico original.

Importante: isto não é picuinha. Ao contrário do que outro usuário pensou, esta é uma comparação
breve de tecnologias. Eu acho o Eclipse melhor, e aqui apresento um pouco bem pouco do
porque acho isso. Portanto espero que vocês usários do NetBeans se dêem ao trabalho mínimo que
tive: baixem o Eclipse e o testem também antes de começarem a criticar o que não sabem.

E por último: todo mundo sabe que o Matisse é melhor que o VE. Fim da discussão, não precisa ficar
falando.

Finalmente, às diferenças.
As features pouco explicadas são as que o netbeans também possui.

:arrow: Eclipse:
* Instalação: arquivo zipado

* Hello world
  - seleção de workspace
  - startup em 3 segundos
  - clico em "tutorials" na welcome screen
  - clico em "build a simple java application"
  - sigo os passos do tutorial integrado à IDE ( vendo para entender o quão bonito funciona)
  - finalizo minha aplicação HelloWorld em 10-15 segundos
  - saída no console de minha classe
  [i]Hello World[/i]
* Editor
  - code templates
  - quick fix

  - editor tem suporte quase total às features do Java 5, destacando Generics

  - code completion mostra o javadoc, e dezenas de opções para selecionar quais e em que ordem as
opções do code complete aparecem (deprecated, code templates, super class methods, etcetcetc),
suporte também a CamelCase

  - code completion tem a opção para adivinhar parâmetros e nomes de parametros de métodos
invocados, funciona muito bem

  - goto class feature, com a caixa de diálogo e com ctrl+click e o goto last edit location
  - alt + hover method (configurável) = mostra a implementação do método numa popup
  - goto file: igual ao goto class, mas com arquivos. Absurdamente útil.

  - teclas de atalho em cascata
  - posso alterar e adicionar qualquer tecla de atalho para qualquer ação possível na ide,
inclusive ações novas adicionadas por plugins. Isso vale ouro.
  - exportar as configurações de tecla de atalho, útil ao ir trabalhar em outro computador
 
  - marcar ocorrências: ao pousar o cursor sobre um tipo, é na barra lateral do editor todas as
linhas onde  referências ao tipo. Por exemplo um atributo, ou os métodos implementados de uma
interface.

* Debugger
  - debugging filter
  - é possível alterar e compilar o código enquanto estou debugando

* Aparência
  - perspectivas: cada coisa é uma coisa. Se quer debugar,  interface de debug, se quero criar
uma interface gráfica, se quero ver o banco de dados, etc etc etc etc.s
  - posso colocar qualquer view (janelas, por assim dizer) onde eu quiser, como eu quiser, do
tamanho que eu quiser. Dockada ou não, com tecla de atalho ou não. E posso salvar as opções sob
uma perspectiva qualquer.
  - posso adicionar e remover qualquer botão da toolbar e diversos comandos nos menus e popups.
Cada configuração é única para cada perspectiva

* Opções gerais na IDE: vou fazer as comparações Eclipse x Netbeans inline aqui:
  - antes de mais nada, a janela de preferências é "buscável". É que são tantas opções de
customização que fica difícil lembrar onde cada uma fica.
  - editor Java (nem vou falar dos outros editores):
    + alterar completamente a configuração do syntax highlighting de [b]todos[/b] os elementos
Java. As opções do NetBeans fazem parecer que java é uma linguagem de script.
    + posso mudar a porcaria da fonte que gosto de usar no Eclipse, inclusive para o console,
menus e tudo mais. No NetBeans  aceita true type. Eu gosto de Raize.
    + 500+ opções de formatação de código (eu contei). NetBeans: 6 (sim, meia-dúzia).
     acabaram as opções do NetBeans, então vou apenas citar algumas do Eclipse
    + escolher quais informações (return types, parameters, etcetcetc) aparecem sobre os elementos
java nos viewers (popups, explorer,etc)
    + escolher qual prefixo utilizar ao gerar getters para booleans: "is" ou "get"
    + add @Override annotation (opção de Java5)
    + adicionar comentários a métodos criados (assim como no NB, também  comments templates)
    + escolher o nome da variável de exceção em catch blocks gerados pela IDE
    + se autocompletion sobrescreve ou apenas insere, e é possível alternar entre modos segurando
"ctrl"
    + opções de folding iguais ao do NB
    + definir quais informações devem ser mostradas ao passar o mouse em cima de um elementos
(variable values, problems, externalized string [ele busca no bundle o valor de uma chave],
javadoc, source, annotation description), e é possível configurar modificadores (ctrl, alt, shift,
etc etc) para alternar entre cada tipo
    + quais tipos ativam a "mark ocurrences" feature
    + fechar automaticamente: aspas, parenteses, brackets, braces, javadoc tags
    + inserir automaticamente na posição correta semicolons e braces. Isso facilita muito muito a
vida.

  - tem bem mais opções gerais da IDE, como file associations e ... bem .. mais uns 500 itens
facilmente, mas chega .
   

:arrow: NetBeans:
* Instalação:
  - .exe
  - parece que foi alguém com muita muita pressa que fez o wizard de instalação. Horrível.
  - tenho que selecionar um JDK. No Eclipse posso ter dois projetos que usam jdks de versões
  ** edit: Marcelo corrigiu dizendo que isto  é necessário na instalação para escolher sob
      qual JDK rodar o NetBeans. Não tem isso no Eclipse, ponto para o NetBeans.
  ** edit: no Eclipse também  para selecionar qual JVM usar:
    guj.com.br/posts/list/15/33101.java#177422

diferentes abertos e funcionando ao mesmo tempo.
  - download é bem menor que do Eclipse, mas o espaço ocupado em disco é quase o mesmo (4mbs a
mais para o Netbeans).
 

* Hello World
  - não tem workspace, prejudicial para pessoas que como eu tem projetos de trabalho e projetos
pessoais
  - clico em get started na Welcome Screen
  - não funciona, ele tenta abrir um arquivo html em meu editor de texto..
  - desito do get started e vou em file > new project
  - sigo o wizard, normal. Tem bem menos opções que o Eclipse. Bem bem menos.
  - botão direito no projeto > new java class
  - preencho o diálogo. Tem bem menos opções que o Eclipse, sem comparação, credo.
  - finalizo minha aplicação HelloWorld em 10-15 segundos 
  - saída no console de minha classe
  [i]init:
deps-jar:
Compiling 1 source file to D:\java\netbeans\netbeans-5.0\workspace\teste\build\classes
compile-single:
run-single:
Hello world.
BUILD SUCCESSFUL (total time: 0 seconds)
[/i]
  - percebo que o netbeans não compila minha classe  por salvá-la...

* Editor
  - code templates é uma cópia descadara (é simplesmente igual, inova nada) do code templates que
o Eclipse tem desde 2.x
  - quick fix é uma cópia descadara, até o ícone é igual (é simplesmente igual, inova nada) do
quick fix que o Eclipse tem desde 2.x

  - code completion igual ao do Eclipse, mas também com sugestões para fazer override de métodos
  ** edit: Eclipse também sugere o override de métodos

  - goto class feature, cópia descarada do Eclipse desde a versão 2.x, até o ícone de last edit
location é idêntico

  - teclas de atalho das ações padrão da IDE configuráveis. Tem suporte a perfis, o que é útil
caso mais de uma pessoa use o mesmo computador.

* Debugger: vergonha total. Aa interface é terrível, por não usar o esquema de perspectives do
Eclipse eles resolveram simplesmente jogar todas as janelas possíveis com as informações de debug
num quadradinho no canto com abas. Sem contar nos botões extra gigantes na toolbar principal. Se
você não usa 1280x1024 como eu, meus pêsames.

* Aparência:
  - controle de views igual ao do eclipse
  - opções de toolbar igual ao firefox, para quem gosta de clicar ao invés de teclas de atalho é
bem legal
  - acho que pode trocar o l&f
  - feature de fast-view copiado do Eclipse desde a versão 2.x

112 Respostas

P

Com td o respeito do mundo !!

Esse tipo de comparação deve ser feita por alguem que não veste nenhuma das duas camisas !!!

tempo perdido

marcelomartins

LIPE, qual o problema de copiar as coisas do eclipse? Pela quantidade de vez que tu destacou isso ficou estranho.

Correções: No NetBeans tu também pode ter vários projetos com várias JDKs diferentes. O que ele te pede na instalação é qual a JDK ele vai usar para rodar o próprio NetBeans.

Alias, onde tu escolheu a JDK que o eclipse vai usar para rodar?

E ai está o problema, tu omitiu todos os problemas do Eclipse e só citou os problemas do NetBeans. Acredito realmente que tu tenha tentado ser imparcial, mas como tu mesmo destacou ficou complicado.

Acho que os dois tem seus méritos, e numa conclusão de quem usa as duas IDEs eu digo de forma generalista que o Eclipse é melhor. Mas para usuários iniciantes o NetBeans é melhor :slight_smile:

_fs

pm: E qual alternativa? Alguém aqui usa JBuilder?

E exatamente por este motivo pedi que algum usuário do NetBeans baixe o Eclipse e faça comparação semelhante. Se tivesse lido meu tópico, teria concluído o mesmo.

Tempo perdido foi responder ao seu reply. Se me dei ao trabalho de pensar antes de escrever, pode fazer o mesmo, por favor?

_fs

Marcelo: nenhum problema em copiar. Problema em copiar e não inovar. E sei que isso todo mundo faz, mas continua sendo um problema.

Vou editar o tópico inicial.

Não tentei ser imparcial, não mesmo! Tentei ser impessoal. Eclipse e NetBeans não são bichos de estimação. São IDEs. E penso que quem usa o NetBeans está perdendo tempo e dinheiro.
Portanto refaço meu pedido: baixem o Eclipse e façam teste semelhante. Me provem errado, oras.

Luiz_Aguiar

Nem da pra perceber direito que vc não vai com a acara do Netbeans né hehe :slight_smile:

mas boa iniciativa, poderiamos extender pra outras IDE tbms, JDeveloper e IDEA por exemplo.

valeu!

R

Gente, por favor. Se é para comparar Eclipse com Netbeans, eu sugiro que se criem 2 tópicos. Um que os experts do Netbeans digam o que há de melhor nele, e outro dos experts em Eclipse. Só assim o fórum se torna algo construtivo, para quem não entende de Netbeans, e para quem não entende de Eclipse. Senão, vira briga partidária!

P

cara…desculpe-me se pareci grosseiro…não foi essa a intenção

é que esse tipo de coisa leva nada a lugar nenhum !!! alias leva alguma coisa sim… divisão de usarios java por causa de ide !

será isso um problema ? Ou podemos tornar isso um problema ?
isso seria um prato cheio em discussões java x .net…

ide depende de tudo, por exemplo: tipo do projeto (webXdesktop), empresa, sexo, cor,raça , time que o cara torce!

marcelomartins, falou td…
o duro e ser imparcial apartir no momento em que o cara ja assumiu uma tecnologia como religião

_fs

Luiz: quase isso :smiley:
Eu gosto do Eclipse. É diferente de não gostar do NetBeans.
A postura “use o meu porque o outro é ruim” é coisa da Microsoft hehe

pm: como pode reparar meu tópico é um bom tanto diferente das outras discussões um x outro, principalmente porque eu instalei o concorrente :wink:
Agora a razão disso falei acima: produtividade, tempo, dinheiro. Se me percebesse que o NetBeans me faz mais produtivo do que o Eclipse, usaria ele oras.

P

tente ser produtivo desenvolvendo aplicações “desktop” com o eclipse…

T

Uma coisa que me incomoda terrivelmente no NetBeans 5.0 (bom, vocês sabem que pelo meu avatar eu sou um usuário cotidiano do Eclipse :stuck_out_tongue: - não quer dizer que eu seja “adorador” do Eclipse; tenho uma camiseta preta do Eclipse [JavaOne] e outra camiseta preta do NetBeans [NetBeans Tour] em casa) é que quando vou usá-lo com coisas aparentemente básicas (só o download original + as atualizações do site de update) ele começa a dar um monte de “stack traces” no próprio NetBeans (aquela bolinha vermelha no canto inferior direito da tela) e acabo tendo de usar o método Microsoft de lidar com problemas - sair do NetBeans e entrar de novo.

Acho que o NetBeans precisava de um pouco mais de controle de qualidade.

(O Eclipse é bem bugado também, e quando os bugs aparecem, chega a ser pior, porque começam a aparecer em código nativo etc. Só que os bugs parece que não me atrapalham tanto)

marcelomartins

LIPE:
E penso que quem usa o NetBeans está perdendo tempo e dinheiro.
Portanto refaço meu pedido: baixem o Eclipse e façam teste semelhante. Me provem errado, oras.

Bem, tu tem o direito de pensar o que quizer, mas ta errado :slight_smile:

Eu passei 1 semana avaliando as duas IDEs e definindo qual a melhor para a empresa. E no final eu decidi. O NetBeans é melhor, para o meu ambiente, para o meu tipo de programador, para o meu caso, e ponto final.

Baixei o Eclipse, testei, instalei TODOS os plugins que tu pode imaginar, customizei o eclipse, montei instalação personalizada, fiz o diabo, e depois eu vi, o NetBeans é melhor para o meu caso.

Mas pra ti ver, na minha casa eu nem tenho o NetBeans, só uso o Eclipse pra programar em Java, PHP, Groovy, Ruby, etc…

:smiley:

giu

Eu acho q tópicos de tipo deveriam ser bloqueados!
Por que todo MUNDO sabe que isso só acaba em bate-boca. Todo mundo sabe que sempre vai ter os que amam o Eclipse e os que amam o Netbeans.
Eu sou fã do NetBeans, e gosto muito do Eclipse, mas nem por isso fico discutindo com o GUJ inteiro, para provar que o que eu gosto é melhor para o todos.

falow

T

O Daniel estava querendo saber se dá para trocar o Look & Feel do NetBeans; dá, porque ele é uma aplicação Swing normal.
Estou rodando com o L&F Metal mesmo, para ver se ele fica um pouco mais “leve”. (Mas o menu não fica exatamente como os menus do Metal, mas um pouco mais bonitinhos).
Na verdade um monte de controles foram reescritos; é difícil ver algum controle padrão do Swing sendo usado no NetBeans.
Tem aquele cara da Sun (Kiril) que desenvolveu um L&F chamado Substance e mostra o NetBeans usando esse L&F; não sei se isso é muito prático :stuck_out_tongue: - é muito “enfeitado” pro meu gosto.

giu

thingol:
O Daniel estava querendo saber se dá para trocar o Look & Feel do NetBeans; dá, porque ele é uma aplicação Swing normal.
Estou rodando com o L&F Metal mesmo, para ver se ele fica um pouco mais “leve”. (Mas o menu não fica exatamente como os menus do Metal, mas um pouco mais bonitinhos).
Na verdade um monte de controles foram reescritos; é difícil ver algum controle padrão do Swing sendo usado no NetBeans.
Tem aquele cara da Sun (Kiril) que desenvolveu um L&F chamado Substance e mostra o NetBeans usando esse L&F; não sei se isso é muito prático :stuck_out_tongue: - é muito “enfeitado” pro meu gosto.

Eu já usei vários outros, mas como tu mesmo disse o metal ocean é o melhor e mais rápido. O unico que fica quase igual é o JGoodies XP.

W

Olá galera,
Eu me nego a comentar qualquer item deste tópico pq. não vejo fundamento em nada…

“Lipe vc. e uma cara legal te admiro mais…mais…bem até mais…”
:?

_fs

Finalmente chegamos ao ponto em que queria :smiley:
Marcelo, pode dizer por que avaliou o NetBeans como uma ferramenta melhor?

William, era só não responder o.o

1112

Meu projeto atual é um projeto Swing usando Eclipse. As falhas de produtividade que existem são culpa de qualquer coisa, menos do Eclipse, acredite.

marcelomartins

LIPE:
Finalmente chegamos ao ponto em que queria :smiley:
Marcelo, pode dizer por que avaliou o NetBeans como uma ferramenta melhor?

Como eu já disse, as duas IDEs são boas, e eu vejo vantagens para o Eclipse.

Porque não o Eclipse?

  • Os projetos só funcionam nele. O NetBeans usa o ANT e me permite usar os projetos sem o NetBeans, podendo inclusive usar o Eclipse com os ANTs gerado pelo NetBeans.
  • Os projetos não podem ser interdependentes. No NetBeans eu adiciono um projeto como depentende to outro, e quando mando compilar o principal ele compila os dependentes, gera o Jar, copia pro principal e tudo mais. Necessário.

Problemas no Eclipse (Maquinas antigas de desenvolvimento )

  • 2 horas pra abrir um XML.
  • 3 horas pra abrir um JSP.

Vantagens do Eclipse:

  • Excelente editor de códigos Java.
    Essa vantagem conhecida do Eclipse perdeu a validade pelo perfil dos desenvolvedores aqui na empresa. Usuários iniciantes que nem imaginam que podem fazer com uma IDE.

Resumindo, o NetBeans foi o escolhido para codificação. Mas pela flexibilidade dos projetos do NetBeans existe alguns terceiros utilizando o Eclipse. Por conta e risco. Os programadores estão felizes pelas caracteristicas do NetBeans (antes utilizavam o JDeveloper 9. Então ficou todo mundo feliz.

Hempx

O editor do eclipse é incoparável em relação ao netbeans. Já o netbeans tem investido em funcionalidades que facilitam a vida de iniciantes e pessoas que gostam fazer programas nos estilo “wizard”. Outra coisa que acho bem legal também é essa integração de uma ferramenta única. O LIPE falou que isso é coisa de preguiçoso, mas isso facilita muito a vida dos desenvolvedores de um projeto já que todos utilizam ferramentas igual, facilitam o ganho e a troca de experiências. Não tenho certeza mas acho que isso é até um dos critérios do CMMI.
Eu sei que da para fazer isso com o Eclipse também, mas exige maior experiência com plugins e talz.
No caso desktop(Swing) eu acho que o pessoal da sun fez um ótimo trabalho. Vamos esperar ver se ele vai conseguir vair isso para o JEE sem que vire uma monstro como IDEs da antigas ae.
Mas por enguanto eu fico com o eclipse!!!

Rubem_Azenha

opa! peraí, acho que não tem nada haver. Todas as empresas que eu conheço (quando digo conhecer, é conhecer mais ou menos o que eles as ferramantas)que tem CMMI (ta só conheço uma :P) usam Eclipse numa boa.

_fs

Perfeito, Marcelo, muito obrigado.

Antes de mais nada, concordo que esta é a maneira que o Eclipse deveria tratar o build do projeto, de forma transparente como NetBeans.

Contudo o Eclipse tem sim uma feature para gerar o build.xml, com tudo configurável. E também outra feature para exportar para um .jar.

fmeyer

Q diabos CMMI tem haver com wizard ?? onde na sua vida vc assimilou q padronizacao == wizard ?

sem contar q CMMI Fede …

Hempx:
No caso desktop(Swing) eu acho que o pessoal da sun fez um ótimo trabalho. Vamos esperar ver se ele vai conseguir vair isso para o JEE sem que vire uma monstro como IDEs da antigas ae.
Mas por enguanto eu fico com o eclipse!!!

Voce ja usou IntelliJ é muito mais leve com uma gama de recursos muito maior

jack_ganzha

Gostei do topico, dá até para tirar algumas dicas de como usar melhor o Eclipse, valeu, LIPE.

Vc pode sim indicar para o Eclipse qual VM usar:

eclipse.exe -vm c:\java\bin\javaw.exe

Tirado do help:

-vm <path to java executable> (Executable, Main)
when passed to the Eclipse executable, this option is used to locate the Java VM to use to run Eclipse. It must be the full filesystem path to an appropriate Java executable. If not specified, the Eclipse executable uses a search algorithm to locate a suitable VM. In any event, the executable then passes the path to the actual VM used to Java Main using the -vm argument. Java Main then stores this value in eclipse.vm.

É verdade, integração com o Ant ainda precisa ser melhorada no Eclipse, mas, se eu escrever bem meu build.xml, essa historia de “os projetos só funcionam nele” não conta. Acho que o Netbeans até criou um wizard para importar projetos, não? O Maven2 também possui um archetype para projetos do Eclipse, deve haver algum para o NetBeans tambem.

Problemas no Eclipse (Maquinas antigas de desenvolvimento )

  • 2 horas pra abrir um XML.
  • 3 horas pra abrir um JSP.

Se for a instalação sem plugins feita pelo LIPE, os arquivos vão abrir no editor de texto plano, não demora. De acordo com o plugin pode demorar um bocado mesmo, vide WTP.

valeuz…

Mauricio_Linhares

E o Eclipse precisa de JDK?

O Eclipse usa a JRE pública do sistema pra rodar.

Thiago_Senna

Olá pessoal,

hoje sou usuário do Eclipse, e já tive anteriormente o prazer de usar o NetBeans, que na época era a versão 3.6.

Lipe, gostei muito da sacada de citar as vantagens e desvantagens na criação de uma aplicação Hello World. No entanto, só faltou uma coisa.

Talvez se tentasse outros tipos de situações, como por exemplo, criar um Hello World usando JSP e um outro usando Servlet, você vai ver que o NetBeans para um iniciante é um prato cheio, conforme citado pelo Marcelo Martins.

Por exemplo, no netbeans o Tomcat já vem integrado com a IDE. Tem wizards para criar JSP e Servlet e por ai vai.

Criar um HelloWorld utilizando Swing também seria um desafio para um iniciante utilizando eclipse. Você mesmo citou que o Matisse é melhor que o VE, mas a diferença é que no caso do NetBeans os recursos já estão lá, não é necessário instalar plugin algum.

IMHO, as vantagens do NetBeans surgiriam a partir do momento em que o eclipse começa a depender de plugins.

Hoje prefiro eclipse, e as tentativas que tive de tentar voltar ao netbeans não foram boas. Mas até hoje sou grato por ter iniciado com NetBeans, que foi o ponta pé inicial na minha carreira. :wink:

Gabriel

E o JDeveloper, alguém já testou?

Eu tenho ele aqui e acho ele tão bonito. Só não tive coragem de fuçar ainda huahauhau :stuck_out_tongue:

Daniel_Quirino_Olive

Gabriel:
E o JDeveloper, alguém já testou?

Eu tenho ele aqui e acho ele tão bonito. Só não tive coragem de fuçar ainda huahauhau :P

Então remova ele da sua máquina. Ela é praticamente odiada por todos onde eu trabalho pois:

:arrow: o cliente CVS não funciona direito;

:arrow: não tem cliente SVN;

:arrow: se você não for trabalhar com o OC4J como J2EE container, você se ferrou;

:arrow: suporte a Ant merece receber todos os xingamentos do mundo;

:arrow: refactoring?

:arrow: é pesada;

:arrow: a geração de código dela, quando existente, é péssima;

Se você precisa de um ambiente all-in-one, entre o JDeveloper e o Netbeans, use o segundo (sua sanidade mental agradece).

peron

gostaria de saber se é tão dificil fazer um editor de código tão bom quanto o do Eclipse no Netbeans…

Só isso me faz não usar o Netbeans… Não consigo gostar de codificar nele :frowning: Ja tentei, JURO!

sds

Leozin

faz um teste agora com IntelliJ agora :wink:

marcelomartins

Nâo tem o que discutir! :slight_smile:

http://cld.blog-city.com/eclipse_versus_netbeans__the_winner_is_java.htm

jaboot
Porque vocês não fazem assim: o LIPE cita as vantagens e desvantagens do Eclipse O Marcelo cita as vantagens e desvantagens do NetBeans Alguém cita as vantagens(se tiver) e desvantagens do JDeveloper

Acho que a discussão vai ficar bem mais legal. LIPE, achei ótima a sua iniciativa :thumbup: , mas tenho dizer que você não foi tão imparcial assim. Poderia ter sido mais.
Fica como exemplo esse tipo de discussão saudável (pelo menos até agora).

Leozin

marcelomartins:
Nâo tem o que discutir! :slight_smile:

http://cld.blog-city.com/eclipse_versus_netbeans__the_winner_is_java.htm

agreed :slight_smile:

J

Desculpa, mas você está enganado aqui. Se isso for verdade, por que projetos open sources usam de Netbeans, eclipse a IntelliJ como IDE ao mesmo tempo.

Aqui na minha empresa mesmo, cada um usa a IDE que quizer, sendo que o Maven 2 é o gerenciados de build.

Claro, você têm que ter um arquivo de configuração para cada IDE, e isso é para todas elas…

Mas no meu caso que é maven2, quer usar eclipse? mvn eclipse:eclipse
Netbeans? mvn netbeans:netbeans (acho que eh isso)
IntelliJ? mvn idea:idea é pronto.

Agora, se têm uma coisa que me irrita no Netbeans é justamente ele gerar aquele monte de build.xml cheio de coisa.

_fs

Thiago, ótimos apontamentos.

Mas reforço que meu intuito com o Hello World não foi para demonstrar as facilidades que alguém iniciando em Java teria, mas alguém se iniciando na IDE.
Novatos tem que usar Notepad :smiley:

Marcelo, discordo do artigo. A única feature até agora que vi que o NB tem que o Eclipse não tem é o Matisse. O resto todo das features novas, como apontei, existem no Eclipse desde a versão 2.x.

fredferrao

Pessoal alguem poderia me listar, as diferenças, que faz todo mundo dizer que o “EDITOR” do eclipse é super hiper ultra melhor que o do NetBeans, é sério eu gostaria de saber o que tanto tem la que nao tem aqui(não estou de zueira, é que nao sei mesmo)

Quando comecei a estudar Java comecei com o eclipse, e vou te dizer, que quando tentava configurar alguma coisa era uma tragedia, ficava um dia inteiro mexendo e não conseguia nada, o que o LIPE falou do Debug ser bom, na epoca que eu tava começando com java eu vou te dizer uma coisa: Simplesmente eu não fazia a menor idéia do que estava acontecendo naquele monte de tela que aparecia(dito hoje como: perspecticvas) resumindo, simplesmente nao conseguia debugar com ele!!!

Depois quando passei pro NetBeans, foi paixao a primeira vista, porque tudo ja esta ali pronto pra vc!!
O que posso dizer é que o aprendizado do Eclipse é bem mais complicado e com isso dispende mais tempo!! Sem falar nos trocentos plugins, que mesmo vcs experinentes dizendo que é moleza pra instalar, na realizadade não bem assim não, o GUJ esta cheio de perguntas sobre isso!!!

Hempx

Opa opa… ou vocês não leram minha mensagem direito ou eu me expressei muito mal(mais provável).

Eu não disse que para ter CMMI não pode usar eclipse. Eu falei que pela quantidade de escolha de plugins do eclipse, numa empresa média a grande fica dificil todos os programadores utilizarem os mesmos plugins para desenvolvimento web, editor jsp, editor javascript, desktop, teste de desenpenho, de estilo de código… por ae vai. Mas não é impossível!
Mas cá entre nós essa é a alegria do programador.

Outro mal entendido. Eu quis dizer que o netbeans está já colocando junto com IDE funcionalidades mais utilizadas como desenvolvimento JEE, desenvolvimento desktop, integração ant… o eclipse também faz isso, CVS, ANT… mas acho um erro o eclipse não integrar já com seu IDE um plugin para desenvolvimento web(que hoje em dia não é mais um requisito nos sistemas e sim uma exigência).
Isso pode facilitar a vida do programador experiênte que tem uma IDE mais enxuta na qual ele instala a ferramenta que ele mais gosta, já para um iniciante é um inferno. Por isso acho que o netbeans vai começar a popularizar muito. Posso estar errado, mas de qualquer jeito eu acho uma pena porque o eclipse é matador!

Está fora do escopo dessa thread

Bom saber

Luiz_Aguiar

HeloWorld no IntelliJ IDEA
http://www.jetbrains.com/idea/training/demos/rob/hello_sixty.html

:smiley:

marcelomartins

juzepeleteiro:
marcelomartins:

Porque não o Eclipse?

  • Os projetos só funcionam nele. O NetBeans usa o ANT e me permite usar os projetos sem o NetBeans, podendo inclusive usar o Eclipse com os ANTs gerado pelo NetBeans.
  • Os projetos não podem ser interdependentes. No NetBeans eu adiciono um projeto como depentende to outro, e quando mando compilar o principal ele compila os dependentes, gera o Jar, copia pro principal e tudo mais. Necessário.

Desculpa, mas você está enganado aqui. Se isso for verdade, por que projetos open sources usam de Netbeans, eclipse a IntelliJ como IDE ao mesmo tempo.


Desculpe mas eu não entendi! Afinal, hoje é sexta :slight_smile:

Conforme eu disse, aqui também, só que é o ANT que faz o build.

juzepeleteiro:
Claro, você têm que ter um arquivo de configuração para cada IDE, e isso é para todas elas…

Mas no meu caso que é maven2, quer usar eclipse? mvn eclipse:eclipse
Netbeans? mvn netbeans:netbeans (acho que eh isso)
IntelliJ? mvn idea:idea é pronto.


Isso, foi oque eu disse :slight_smile:

Monte de build.xml? não faz sentido isso! :slight_smile:

E o NetBeans gerar os scripts do ant é uma vantagem no meu ponto de vista!

T

Enquanto isto, o pobre programador de tecnologias Microsoft paga uma nota pelo Visual Studio 2005, que está (aos poucos) pegando algumas idéias do Eclipse e outras IDEs Java.

O que o MS Visual Studio 2005 tem de interessante, agora:

  • Você pode pegar um projeto em C/C++ e ter o Intellisense (nome patenteado para o Auto-Complete) sem precisar recompilar o programa. Isso é legal para mim porque posso pegar um programa em C de outra plataforma que não tem esse recurso e editá-lo no VS2005 em vez de usar o “vi”. (Eu sei que o “vim” e o “emacs” têm Auto-Complete, mas a maldita plataforma - SCO Unix - não tem versões atualizadas desses pacotes por causa daquela briga da SCO com a comunidade do Linux.)
  • Finalmente (devem ter pago uma nota preta à Intel) eles têm um compilador C que presta, com otimização baseada em “profiing”,
  • No C# você tem alguns (só alguns) refactorings.
  • E outras toneladas de coisas novas que não uso agora.

Ainda bem que não pago um centavo pelo VS2005 porque a empresa onde trabalho é MS Solution Provider. Mas se tivesse de pagar…

J

marcelomartins:
juzepeleteiro:
marcelomartins:

Porque não o Eclipse?

  • Os projetos só funcionam nele. O NetBeans usa o ANT e me permite usar os projetos sem o NetBeans, podendo inclusive usar o Eclipse com os ANTs gerado pelo NetBeans.
  • Os projetos não podem ser interdependentes. No NetBeans eu adiciono um projeto como depentende to outro, e quando mando compilar o principal ele compila os dependentes, gera o Jar, copia pro principal e tudo mais. Necessário.

Desculpa, mas você está enganado aqui. Se isso for verdade, por que projetos open sources usam de Netbeans, eclipse a IntelliJ como IDE ao mesmo tempo.


Desculpe mas eu não entendi! Afinal, hoje é sexta :slight_smile:

Conforme eu disse, aqui também, só que é o ANT que faz o build.

juzepeleteiro:
Claro, você têm que ter um arquivo de configuração para cada IDE, e isso é para todas elas…

Mas no meu caso que é maven2, quer usar eclipse? mvn eclipse:eclipse
Netbeans? mvn netbeans:netbeans (acho que eh isso)
IntelliJ? mvn idea:idea é pronto.


Isso, foi oque eu disse :slight_smile:

Monte de build.xml? não faz sentido isso! :slight_smile:

E o NetBeans gerar os scripts do ant é uma vantagem no meu ponto de vista!

Agora nem eu entendi mais… hehhehehe… você não disse que um motivo para não usar Eclipse é que os projetos que usam o eclipse só podem ser usados neles? Quanto ao ANT eu até entendo que você ache isso uma vantagem, mas para mim não é, uma vez que eu não uso o ANT. Logo, aquele ant todo que fica la do Netbeans é só do netbeans. Alias, build.xml do netbeans está no ignore list do SVN.

Rubem_Azenha

Hempx:
Opa opa… ou vocês não leram minha mensagem direito ou eu me expressei muito mal(mais provável).

Eu não disse que para ter CMMI não pode usar eclipse. Eu falei que pela quantidade de escolha de plugins do eclipse, numa empresa média a grande fica dificil todos os programadores utilizarem os mesmos plugins para desenvolvimento web, editor jsp, editor javascript, desktop, teste de desenpenho, de estilo de código… por ae vai. Mas não é impossível!
Mas cá entre nós essa é a alegria do programador.

Eu prefiro eu mesmo escolher os plugins. Se cada um usa o plugin que quer, cada um escolhe o que é mais produtivo. E isso proporciona um aprendizado colaborativo: o colega do lado chega e me mostra um plugin que ele usa, eu vejo que é melhor do que eu uso, começo a usar ele.

Eu particularmente acho umas das coisas mais divertidas do eclipse ficar vendo os plugins mais diversos e instalando, só para ver como funciona, mesmo que eu não use :stuck_out_tongue:

E não sei por que você misturou CMMI no meio.

Se o programador tem preguiça de baixar plugins, pode pegar um distrubuição já empacotada com plugins para desenvolvimento JEE.

Dizer isso é o mesmo que dizer que a distribuição do JDK deveria vir já com um Aplication Server J2EE (e por que não o Java ME :P) para facilitar a vida do programador preguiçoso.

Caramba, eu estou muito satisfeito em trabalhar em uma empresa com CMM e buscando CMMI. O que o pessoal ve de tão ruim no CMM*? Inveja, raiva, mágoa???

T

Bom as duas ferramentas tem as suas vantagens… então unindo o útil ao agradável…

espero que ajude :wink:

Hempx

A empresa aonde trabalho está querendo conseguir CMMI nível 3. Eles estão querendo que todos adotem o Rational Software Architect da IBM, que não é nada mais do que o eclipse com os plugins da IBM.

Concordo, mas desenvolvimento web é maior parte do mercado java, ao meu ver não custava nada já vim com um plugin para isso, iria facilitar muito a vida de um iniciante também. Mas isso é discutível, por existir esse outro lado que você falou.

Também concordo, são práticas que devem serem seguidas por todas as empresas.

Z

Eu adotei uma solucao bem simples na minha equipe para que nao houvesse mais esse problema de gente com preguica de procurar plugin: eu peguei o Eclipse original, instalei o WebTools e alguns outros plugins que nos usamo e disponibilizei o zipao no servidor de arquivos de empresa. Agora eh soh o nego ir lah baixar e dezipar, e tambem nao precisa mais consumir link de internet pq os arquivos estao na rede local.

E tambem ja deixei configurado os upades sites do Eclipse, dai eh soh o cara ir la e pedir pro Eclipse atualizar tudo sozinho.

Pra mim, essa eh a solucao mais adequada. Se as pessoas da sua equipe sente falta de um pacotao a la Netbeans, eh soh voce fazer um pro Eclipse - ja que ele permite esse nivel de personalizacao - e disponibiliza-lo internamente.

cv1

Um pouco dos tres. Mas, no fim das contas, eu acho que CMM(I) eh soh uma puta distracao do que eh desenvolver bom software.

Rubem_Azenha

Ainda estou esperando alguém me dizer por que CMM* é ruim. Até agora só me linkaram para coisas de XP, etc, etc.

Se XP é melhor ou não, isso não importa. Só não me disseram pq o método CMM* é ruim.

F

microfilo:
Ainda estou esperando alguém me dizer por que CMM* é ruim. Até agora só me linkaram para coisas de XP, etc, etc.

Se XP é melhor ou não, isso não importa. Só não me disseram pq o método CMM* é ruim.

Tu ja parou pra se perguntar porque ele é bom?

]['s

Fabricio_Cozer_Marti

Não é que ele seja totalmente ruim, mas simplesmente burocratiza o desenvolvimento, é muito papel, muitas etapas, pra resolver um bug, tem que ter um monte de coisas que as vezes não é necessário. Em termos de organização é legal, e também qual a empresa hoje em dia que não deseja ter CMM(I) ? Os clientes adoram …

Mas enfim, não sou nem contra nem a favor, mas como o pessoal acredita em fábricas de software, o CMM é um alicerce para eles.

jmp

Se voce perguntar pra maioria de empresas de peso (to falando de fortune 500) elas nao tem nada especifico, geralmente eles usam um “frankstein” de metodologias para adequar a sua realidade de trabalho. XP é legal, mas programacao em dupla é bobagem. Quando voce tá trabalhando geralmente voce esta fazendo outras besteiras ao mesmo tempo, as vezes para 10 minutos para ver o GUJ, etc.

Onde eu trabalho, nós desenvolvemos e nos tambem somos um dos clientes (o principal, alias), como eu faria uma reuniao comigo mesmo? Seria algo meio “clube da luta”.

[]s

pcalcado

Bom, exceto pelos tempos (já que não posso saber que máquina você usa, mas aqui não demora nem 1/10 disso) é melhor fazer sua avaliação com masi cuidado. Projetos do Eclipse podem ser relacionados (veja nas propriedades do projeto) e o Eclipse não interfere em NADA com seu projeto.

Falando em ant e Netbeans, como é ter um projeto não baseado em ant no Netbeans? Precisa de plugin?

Acho que cada ferramenta tem seu publico. O Eclipse geralmente é pra quem gosta de codificar, o netbeans quem quer ficar na frente do computador o mínimo de tempo possível. Os dois vão conviver muito tempo ainda e graças a Zahl, como já disseram, temos tantas e tantas IDEs. Escolham a melhor [b/para vocês[/b] porque o que é bom para um não precisa ser bom para outro, principalmente em algo tão religioso quanto IDEs. Emacs e vi saem na porrada há décadas e isso nunca acabou, vocês acham que em java vai ser diferente?

pcalcado

jmp:
XP é legal, mas programacao em dupla é bobagem. Quando voce tá trabalhando geralmente voce esta fazendo outras besteiras ao mesmo tempo, as vezes para 10 minutos para ver o GUJ, etc.

Nossa, quantas certezas absolutas. Eu sinceramente fico bobo de ver que gerentes mão-de-vaca não conseguem perceber que programação em par faz você produzir muito mais já que não apra pra ver o GUJ a cada 10 minutos.

E como você gerencia seus requisitos hoje? Não gerencia?

Aliás, se prestar bem atenção vai ver que o cv linkou pro Agile Manifesto, que compreende muito mais que XP, incluindo metodologias diferentes.

cv1

Nao gosta de pair programming? Sinal que uma ou mais das afirmacoes seguintes eh verdade:

Voce e todos na sua equipe…

  • tem niveis de concentracao sobre-humanos
  • sempre sabem o que estao fazendo
  • conhecem todas as classes e padroes usados no sistema
  • conhecem todos os requisitos nao-funcionais da aplicacao
jack_ganzha

Mesma solução, nenhum novato reclama da instação do Eclipse.

valeuz…

jmp

mas vc,

duas pessoas juntas nunca teriam:

  • nivel de concentracao de 1 pessoa sobre-humana;
  • sempre saberiam o que estao fazendo
  • conheceriam todos as classes e padroes
  • conheceriam todos os requisitos nao funcionais

Eu acho que programacao em dupla pode ser substituido por outra coisa meio parecida, sei lá. Programacao em dupla vai de encontro com aspectos humanos. Nem com minha esposa eu nao aguento ficar 8 horas por dia colado.

Grinvon

“- percebo que o netbeans não compila minha classe só por salvá-la…”

creio que esse critério não poderia ser usado como um ponto negativo, que eu saíba apenas o Eclipse faz isso, talvez o WebSphere já que são do mesmo ninho, e em outras IDEs como a ótima IntelliJ IDEA salvar é salvar, compilar é compilar, mas tudo bem, sou neutro nesses assuntos.

Grinvon

As vezes fico impressionado com esse fórum, vocês brigam por tanta besteira e infelizmente algumas pessoas aqui tentam a todo custo (seja por frustação na vida real, talvez não virtual) se afirmar, isso é ridículo.

cv1

jmp:
duas pessoas juntas nunca teriam:

  • nivel de concentracao de 1 pessoa sobre-humana;

Mas, ainda assim, melhor que o de uma pessoa so. Quantas vezes por dia vc para pra ler e-mail, blogs, ou o que seja? Numa sessao de pair programming, isso nao acontece, ou acontece com tao menos frequencia que chega a tomar um tempo praticamente irrelevante.

Ou seja, presumindo que um programador normal, trabalhando sozinho, usa 1/3 do tempo trabalhando de fato (e isso eh uma medida chutada, porem altamente otimista), dois programadores conseguiriam usar 2/3 do tempo programando. No entanto, na minha experiencia ate agora, o tempo produzindo acaba sendo bem proximo a 100%.

jmp:
- sempre saberiam o que estao fazendo

  • conheceriam todos as classes e padroes
  • conheceriam todos os requisitos nao funcionais

Trabalhar com alguem do seu lado te da revisao de codigo e feedback instantaneo sobre a qualidade do mesmo.

Alem disso, o conhecimento sobre aquele codigo em particular fica distribuido entre os membros da equipe (ja que normalmente troca-se de par quando conveniente).

Outra: eh muito bom ter alguem pra discutir decisoes de design quando ambos tem o mesmo contexto na cabeca (o que tira a necessidade de ficar explicando tudo de novo).

Essas sao evidencias que suportam pair programming como algo extremamente benefico. Quais sao as suas mostrando o contrario?

cv1

Voce poderia ser mais especifico?

Ironlynx

Problemas no Eclipse (Maquinas antigas de desenvolvimento )

  • 2 horas pra abrir um XML.
  • 3 horas pra abrir um JSP.

Eu uso um P3-1GHz,6 anos de uso e a cada versão do Eclipse sinto uma ligeira melhora.Claro, não uso o WTP, mas mexo com jsp´s-xml no amateras e é tudo rápido.
No início, não usava Eclipse por causa dos 256 de RAM.Depois que eu pûs outro pente, deixei o velho JCreator de lado…
fmeyer

Dentre tantos beneficioes citados aqui vao mais alguns.

* Codigo mais correto ( estrutura, modelo, design )
* Codigo melhor ( melhor escrito, melhor documentado e comentado no proprio codigo) 
* Nao existe meu codigo ou seu codigo, ó codigo é da equipe, oque diminue os badSmells ( aquele codigo fedorento que ninguem tem coragem de mecher ou melhorar) 
* Melhor comunicacao entre a equipe, voce troca enventualmente de par oque faz o conhecimento "circular" pela equipe, e evita coisas do tipo ... 
    "Ih fudeu o jonh faltou, e agora quem vai fazer a integracao XPTO pra HJ"
* Melhor maneira de fazer mentoring, imagina ter aquele cara que manja muito bem de patterns trabalhando com voce. 
* Time mais entrosado e mais focado na produtividade.
* Como o CV citou trabalhar em pair voce nao vai ficar "coçando o saco" na frente do micro

Geralmente pessoas conflitantes e anti-sociais detestam programar em par … em casos até o cara pensa do genero … “eu vou ensinar esse cara e perder meu emprego ??”
Desenvolvimento de software é um processo criativo, voce pode nao estar no seu melhor dia, por que nao ficar dando palpite enquanto seu par ta cheio de ideias.
Eu particularmente nao vejo maleficios em trablhar com XP.

Agora voltando ao topico, eu baixei o netbeans e tentei ( Mas tentei mesmo ) trabalhar com TDD, e definitivamente eu tive 1/10 da produtividade q teria com o eclipse ou IntelliJ, principalmente na minha caracteristica de programacao TDD, que é realmente escrever os casos de testes antes de codificar classes.

Rubem_Azenha

Cara, você pode fazer bom código trabalhando sozinho ou em duplas, com XP ou RUP.

Isso vai mais do implementador do que da metodologia. Eu particularmente acho desconfortável programar em duplas, procuro fazer um bom código sozinho.

1112

Absurdamente otimista.

Leia mais sobre Pair Programming. Você não fica 8 horas por dia com o mesmo par.

Aparentemente, PP é bem legal, queria experimentar um dia.

pcalcado

microfilo:
Cara, você pode fazer bom código trabalhando sozinho ou em duplas, com XP ou RUP.

E tambvém posso escrever programas OO em C. A questão é: a linguagem me facilita isso?

Processos que colocam programadores e código em geral como coisa mecânica tendem a produzir código sofrível.

Thiago_Senna

Olá Rubens,

E como vc faz para saber que seu código está realmente bom?

Daniel_Quirino_Olive

pcalcado:
microfilo:
Cara, você pode fazer bom código trabalhando sozinho ou em duplas, com XP ou RUP.

Processos que colocam programadores e código em geral como coisa mecânica tendem a produzir código sofrível.

Touché. Eu costumo dizer que, quando você começar a criar muitos templates no Eclipse para reduzir a quantidade de código repetido que você tem que escrever, é porque alguma coisa está errada e não é a sua preguiça.

Rubem_Azenha

Thiago Senna:
Olá Rubens,

É RubeM.

Pra isso tem guidelines a serem seguidas e o lider. E bom senso.

Thiago_Senna

Olá, Rubem!

Humm, então existe um líder? Ou seja, uma segunda opinião. E o lider, por acaso tem tempo de ficar revendo o código de toda a equipe?

Ai depende. O que pode ser simples e bem feito para você pode ser um tanto estranho pra mim. Muitas vezes escrevi códigos que para mim pareciam bons, e depois tomei carcada. Bom senso não é um bom instrumento de medida.

Rubem_Azenha

Pra isso existem guidelines Thiago.

Thiago_Senna

Rubem.

até onde sei, guidelines só ajuda você a escrever um código correto, bem formatado, utilizando corretamente os recursos da linguagem. No entanto, decisões de modelagem não se encontra em guidelines por ai. Qual guideline garantiria para você que o ideal é usar herança ao invés de interface? Qual guideline garante que o código que você está escrevendo é fácil de ser compreendido? Melhor ainda, do que adianta seu código ser perfeito e o código do seu companheiro de equipe ser ruim, com vários erros de modelagem e etc? É nesses pontos onde o pair programming se torna um bom diferencial. :smiley:

marcelomartins

pcalcado:
marcelomartins:

Porque não o Eclipse?

  • Os projetos só funcionam nele. O NetBeans usa o ANT e me permite usar os projetos sem o NetBeans, podendo inclusive usar o Eclipse com os ANTs gerado pelo NetBeans.
  • Os projetos não podem ser interdependentes. No NetBeans eu adiciono um projeto como depentende to outro, e quando mando compilar o principal ele compila os dependentes, gera o Jar, copia pro principal e tudo mais. Necessário.

Problemas no Eclipse (Maquinas antigas de desenvolvimento )

  • 2 horas pra abrir um XML.
  • 3 horas pra abrir um JSP.

Bom, exceto pelos tempos (já que não posso saber que máquina você usa, mas aqui não demora nem 1/10 disso) é melhor fazer sua avaliação com masi cuidado. Projetos do Eclipse podem ser relacionados (veja nas propriedades do projeto) e o Eclipse não interfere em NADA com seu projeto.

Os tempos eu exagerei mesmo, mas é algo absurdo. Pra abrir um JSP demorava no mínimo 30 segundos num projeto de 1 jsp. No NetBeans é clica e abre. As maquinas são antigas e quando se falava em as maquinas não serviam me perguntavam coisas do tipo: “- mas pra que mais memória, vai rodar o corel?”. Pra não ser injusto depois de muita briga eu consegui convencer que Java é pior que o corel, e estão para chegar maquinas novas.

Sobre o relacionamento entre os projetos, no eclipse eu não consegui fazer um relacionamento transparente do tipo eu relaciono 10 projetos, dou o Run no principal e ele compila tudo, gera os jars pra todo mundo, e copia tudo pro principal. Era isso que eu queria antes de olhar o NetBeans, e é exatamente isso que o NetBeans faz e eu não consegui fazer no eclipse.

A gente já tinha falado nisso, ele gera os scripts do ant sozinho, e tem um plugin pro mavem 2. Acho que são essas opções. No meu caso eu gostei e serviu pra mim os ants gerados. Então não foi um problema a menos que eu tive entende?

Concordo, não acho que devo convencer ninguém a usar uma ou outra ferramenta, mesmo porque aqui quase todo mundo tem sua opinião e não quer ser convencida do contrario.

Pode acontecer em outro caso que eu precisar analisar uma IDE e eu escolher o Eclipse. Pode acontecer de eu achar que a empresa deve comprar 50 cópias do IntelliJ. Cada caso é um caso. E pro caso especifico que eu estou vivendo aqui o NetBeans foi melhor.

Rubem_Azenha

Thiago Senna:
Rubem.

até onde sei, guidelines só ajuda você a escrever um código correto, bem formatado, utilizando corretamente os recursos da linguagem. No entanto, decisões de modelagem não se encontra em guidelines por ai. Qual guideline garantiria para você que o ideal é usar herança ao invés de interface? Qual guideline garante que o código que você está escrevendo é fácil de ser compreendido? Melhor ainda, do que adianta seu código ser perfeito e o código do seu companheiro de equipe ser ruim, com vários erros de modelagem e etc? É nesses pontos onde o pair programming se torna um bom diferencial. :smiley:

Bom, tem coisas que realmente depende do programador.
Mas não justifica colocar duas pessoas para fazer a mesma coisa. Isso vai do programador. Ele não vai manjar mais só pq tem uma pessoa do lado dele.

Hempx

Falou tudo.

Isso ae, usando padrões, boas práticas, checkstyle, auditoria de código, lider técnico. Se vocês tivessem um processo poderiam definir uma atividade que um neguim fazia auditoria de código para validar sua qualidade(lógico que essa pessoal seria uma pessoa experiênte em programação).

Coçar um pouco é normal em todas as áreas. Agora se você está coçando demais e não está sofrendo conseguencias por isso não é programação sozinho ou em par que irá resolver, talvez vai ser até pior porque os dois vão ficar falando sobre futebol, o problema é que seu projeto está sendo mal gerenciado, ou talvez nem seja gerenciado.

:arrow: RUP x XP

RUP quanto XP tem seus prós e contras, e com minha experiência(pouco mais espero ir evoluindo com a galera aqui), acho que XP se encaixa muito bem em projetos open-sources ou projetos que não vai ser necessariamente vendido, ou seja, para própria empresa. XP tende a a modelar o mínimo possível, apenas o necessário para desenvolvimento do projeto, então ao meu ver fica dificil definir preço(que não seja julgamento de especialista), gerenciar riscos, gerenciar o projeto, gerenciar escopo, fica dificil de validar com o cliente os requisitos, como por exemplo mandar os casos de uso para o cliente para ele validar e funcionar como um contrato.

:arrow: Programação em par

Sobre programação em par é o seguinte, realmente saíra um código de maior qualidade já que terá duas pessoas decidindo, duas pessoas pensando na solução. Mas a produtividade vai lá em baixo! Se as duas pessoas tivessem programando sozinhas você teria o dobro de velocidade(ou quase isso), já que você não entra em contradição com você mesmo, e você decidi tudo sem precisar entrar em consenso, você inventa sua solução sozinho(mesmo que seja tosca).
Eu utilizaria programação em par apenas em partes críticas de um projeto.

Hempx

Você tem toda a razão!!! Eu também fico de cara com isso… problema que às vezes acabo caindo nessa palhaçada também, e apesar do tumulto gerado e pelo busca de descobrir quem é o mais sabidão, você acaba apredendo aguma coisa. :lol:

Obs: Sei que isso não acontece em todas as threads!!!

cv1

Ouch.

Dificil eh gerenciar um projeto que nao sai dos 80%. Em projetos ageis (seja com XP, Scrum ou outra), isso nao acontece.

Leitura obrigatoria caso vc queira saber mais:

http://dannorth.net/archives/6
http://www.thekua.com/rant/?p=407

Voce esta dizendo que a produtividade vai la embaixo, ou vc esta supondo que a produtividade vai la embaixo?

Se o primeiro caso for verdadeiro, como voce explica empresas como a ThoughtWorks, onde mais de 600 desenvolvedores trabalham em pair programming quase que exclusivamente pelo mundo afora, e ate hoje ninguem sentiu isso?

1112

Hempx, você já trabalhou em pair programming? Como eu disse, sou curioso sobre o assunto, então nada como ver experiência alheia. :wink:

Hempx

Não entendi o que você quis dizer com 80%, se puder explicar melhor. Mas irei ver os links citados de qualquer maneira :stuck_out_tongue:

cv:

Voce esta dizendo que a produtividade vai la embaixo, ou vc esta supondo que a produtividade vai la embaixo?

Se o primeiro caso for verdadeiro, como voce explica empresas como a ThoughtWorks, onde mais de 600 desenvolvedores trabalham em pair programming quase que exclusivamente pelo mundo afora, e ate hoje ninguem sentiu isso?


Já li uma referência sobre isso, mas não achei aqui :cry: .
Duas pessoas fazendo um trabalho que uma pessoa faria sozinho cá entre nós não tem como ser mais rápido. Mas concordo com você que terá mais qualidade e confiança dos programadores na solução.
Lembro que nessa referência que li, falava que uma das perdas de produtividade era justamente como falei antes, “os programadores chegarem num entendimento comum”.
Outra coisa, ambos tem de estudar o problema, sendo que esse estudo(leitura básica sobre o problema) terá que ser lido pelos dois, e mesmo lendo em paralelo os dois não leram mais rápido do que tivesse apenas um programador, sendo que no caso o segundo programador já poderia está estudando,por exemplo, um outro caso de uso ou problema.Está ae um exemplo que pensei agora que já mostra outra perda de produtividade.
Sobre a ThoughtWorks acho que eles com certeza devem ter percebido isso. E que provavelmente eles estão muito mais interessados em qualidade do que tempo.

Infelizmente não, apenas li artigos sobre o assunto.

cv1

Leia o fim do post.

Hempx:
Mas concordo com você que terá mais qualidade e confiança dos programadores na solução.
Lembro que nessa referência que li, falava que uma das perdas de produtividade era justamente como falei antes, “os programadores chegarem num entendimento comum”.

E se vc deixar cada um fazer o seu, quando esse entendimento comum acontece? Tarde demais, ne? Quando pedacos significativos do sistema tem que ser refeitos pq nao houve comunicacao suficiente… e eh aih que pair programming aumenta ABSURDAMENTE a produtividade :wink:

Nao, a gente percebeu exatamente o contrario, que dois programadores juntos fazem mais do que isoladamente no mesmo espaco de tempo, com mais qualidade.

Recomendo tentar com alguem que ja esta confortavel com pair programming. De resto, bom aprendizado :wink:

Fabricio_Cozer_Marti

pair programming :smiley:

Alguém aqui já participou daquelas olimpiadas de programação ?
Senão, pergunte pra algum colega seu que já, são 4 pessoas reunidas, cada uma realiza uma tarefa específica, um codifica, outro desenha no papel a solução, outro faz a execução, outro pensa no próximo problema, isso pq o tempo é curto. Com pair programming é praticamente a mesma coisa, mas a dupla precisa estar motivada.

Rubem_Azenha

Não boto fé nesse pair programming. Além de achar desconfortável. Aliás, o pessoal fala, fala, fala, mais quem daqui realmente trabalha com pair programming?

Fabricio_Cozer_Marti

sempre que dá eu faço, mas é uma questão de catequização, quando você não usa a metodologia XP, é difícil vc usar o pair prog. , independente disso, estou no início de um projeto particular, que provavelmente iremos usar XP. :smiley:

jack_ganzha

É aquela velha historia de ter tempo para fazer duas vezes, mas não ter tempo para fazer uma vez bem feito. Se vc considerar que a maior parte do tempo/custo com desenvolvimento é gasto com manutenção, ter menos manutenção a fazer trará economia, não? Fora o fato de pair programming permitir mudanças na equipe de uma maneira bem mais tranquila.

Uma pergunta para os impacientes: vcs tem saco de ficar horas discutindo aqui no forum, por que não teriam para desenvolver trocando ideias e aprendendo com alguem?

valeuz…

A

O Eclipse tb tem completion de overrides, digita o comeco de um metodo da superclasse e aperta CTRL+espaco que vai aparecer a sugestao.

opções de toolbar igual ao firefox, para quem gosta de clicar ao invés de teclas de atalho é
bem legal

Não entendi bem

Thiago_Senna

Em boa parte das empersas por ai, quando o projeto atrasa, o único plano de contigência disponível é fazer hora extra para ‘tentar’ entregar algo no prazo.

Colocar um outro desenvolvedor na equipe faltando apenas 1 mês para entregar o projeto, na prática, não funciona, pois o desenvolvedor só começaria a produzir algo faltando 1 semana para entregar o projeto.

Como não sou fã de hora extra, acho que pair programming também seria muito útil em situações como estas. Em um curto espaço de tempo é possível aumentar a equipe e evitar que os desenvolvedores façam hora extra e abram mão de seus compromissos pessoais.

Daniel_Quirino_Olive

_0/

cv1

Yeap. Faz mais de dois anos.

Z

Eu não trabalho com pair programming. Mas sempre que agente aqui na equipe se senta em dupla pra desenvolver algo, dá pra perceber que o resultado final tem uma qualidade bem superior, saiu em bem menos tempo e o conhecimento da equipe sobre o que foi feito é bem maior, esses beneficios já justificam, pelo menos pra mim.

Atente para o fato de que divulgar o conhecimento pela equipe é muito importante, por que ‘ilha de conhecimento’ é algo que prejudica todo mundo, tanto o funcionário quanto a empresa. E pair programming atinge esse mal bem na raiz.

jmp

Desconfortável é pouco. Eu enlouqueceria em 2 semanas.

cv:

faz mais de dois anos, mas que horas voce trabalha? Teu companheiro posta no guj todo dia tambem? Olhando nos teus posts, a maioria esta no horario de trabalho (no teu).

jmp

Fabrício Cozer Martins:
pair programming :smiley:

Alguém aqui já participou daquelas olimpiadas de programação ?
Senão, pergunte pra algum colega seu que já, são 4 pessoas reunidas, cada uma realiza uma tarefa específica, um codifica, outro desenha no papel a solução, outro faz a execução, outro pensa no próximo problema, isso pq o tempo é curto. Com pair programming é praticamente a mesma coisa, mas a dupla precisa estar motivada.

Isso nao é pair programming, no pair as 2 não realizam tarefas especificas (um codifica, outro desenha) elas realizam a MESMA tafera. (um digita e o outro enche o saco)

Nunca me concentraria com um papagaio no meu ombro.

1112

jmp:
Isso nao é pair programming, no pair as 2 não realizam tarefas especificas (um codifica, outro desenha) elas realizam a MESMA tafera. (um digita e o outro enche o saco)

Nunca me concentraria com um papagaio no meu ombro.

Ou seja, você não é de trabalhar em equipe. Isso diz muito.

P

#@®®¡$:
jmp:
Isso nao é pair programming, no pair as 2 não realizam tarefas especificas (um codifica, outro desenha) elas realizam a MESMA tafera. (um digita e o outro enche o saco)

Nunca me concentraria com um papagaio no meu ombro.

Ou seja, você não é de trabalhar em equipe. Isso diz muito.

Eu até que programaria em par, desde que fosse uma gostosa e não um peludo do meu lado.
Realmente com papagaio não dá. Ainda mais quando ele só sabe dar pitaco e ajudar que é bom, nada, ou seja, vc pega um Luke Skywalker todo atolado no pântano e tem que trabalhar MUUIITTOO nele para virar algo perto de um JEDI.
Trabalhar em equipe é uma coisa e não importa se é em par, em trio,se é uma banda (heheheh) etc…

Fabricio_Cozer_Marti

jmp, dê uma lida http://www.infoq.com/articles/What-is-Agility-Why-Shd-U-Care

Rafael_Nunes

Em Pair Programming você passa o dia todo programando?
Tipo pegam a requisição/story/whatever e os dois passam o dia todo(ou o tempo todo que levar) implementando-a?

Daniel_Quirino_Olive

Rafael Nunes:
Em Pair Programming você passa o dia todo programando?
Tipo pegam a requisição/story/whatever e os dois passam o dia todo(ou o tempo todo que levar) implementando-a?

Não. Você não fica o dia todo com apenas uma pessoa. Costuma-se fazer um rodízio de pares a cada X horas (no livro do Kent Beck, ele fala de 2 horas). Além disso, você não precisa passar O-DIA-TODO programando. Se você está de saco cheio e acha que não vai produzir nada de útil, ou você vai ler uma revista no banheiro ou vai tomar café.

_fs

O Eclipse tb tem completion de overrides, digita o comeco de um metodo da superclasse e aperta CTRL+espaco que vai aparecer a sugestao.

opções de toolbar igual ao firefox, para quem gosta de clicar ao invés de teclas de atalho é
bem legal

Não entendi bem

Oh, fato :smiley: Sempre usei o outro menu para fazer overrides. Vou atualizar lá.

Quanto à toolbar, no firefox clique com o botão direito nela e depois em customize. Você pode arrastar os ícones do menu para a toolbar.

E o povo discutindo agile. Vão comer coco, pô. Para que dicutir isso neste tópico?

Daniel_Quirino_Olive

Desconfortável é pouco. Eu enlouqueceria em 2 semanas.

cv:

faz mais de dois anos, mas que horas voce trabalha? Teu companheiro posta no guj todo dia tambem? Olhando nos teus posts, a maioria esta no horario de trabalho (no teu).

Sejam objetivos, por favor. Pair programming pode não funcionar para vocês dois, micrófilo e jmp. Mas por que vocês dizem que PP não funciona de jeito nenhum?

(objetivamente, por favor! Nada de "ahhh, eu não conseguiria porque eu não gosto de ouvir o que os outros têm a me dizer)

Rafael_Nunes

Criei um tópico para discussão do tema ‘XP e Agile development’ em específico, por que a discussão não condizia muito ao título do tópico:

http://www.guj.com.br/posts/list/0/33567.java#179311

Daniel_Quirino_Olive

Eu tô lendo esse livro do Kent Beck, mas queria experiências de quem trabalhar com o negócio já. Por exemplo, um par está implementando determinada feature, aí depois de um certo tempo, sai um da dupla, entra outro, e eles continuam implementando a feature? Tipo se o baguio pra implementar for trabalhoso/complicado e levar alguns dias, cada um vai implementar um pouco, é isso?

A minha experiência é de ficar trocando a cada 3 horas, mais ou menos. Mas eu, por exemplo, não me importaria em ter alguém do meu lado o dia todo (acho até legal, dá segurança e me ajuda a manter o foco).

Sobre o desenvolvimento de um certo requisito do software, isso vai muito de como sua equipe se organiza. O que pode acontecer é: eu estou desenvolvendo algo e o Zé fica comigo durante as primeiras horas. Se eu estiver de saco cheio e estiver na hora de trocar de pares, o Zé vai desenvolver o que ele tiver que fazer e eu vou procurar alguém para ajudar. No dia seguinte ou mais tarde, eu volto a desenvolver o que eu estava fazendo com outra pessoa (ou até mesmo com o Zé, caso o seja possível).

Rafael Nunes:

Isso é o que mais encano.
Como disseram atrás, o que mais me faz pensar é o aspecto humano nisso tudo. Por exemplo se eu tiver cansado ou de saco cheio de fazer algo, eu posso simplesmente largar tudo e ir ouvir uma música, tomar café, passear na internet? Mas como ficaria a questão da dupla nesse caso, e se for no meio da implementação de algo?

Ué? Vira para o camarada do seu lado e fala: “bora tomar café!”.

DeiversonBH

LIPE:

Não tentei ser imparcial, não mesmo! Tentei ser impessoal. Eclipse e NetBeans não são bichos de estimação. São IDEs. E penso que quem usa o NetBeans está perdendo tempo e dinheiro.
Portanto refaço meu pedido: baixem o Eclipse e façam teste semelhante. Me provem errado, oras.

Caro Felipe,

Acho que você foi muito triste neste pensamento, você esta sendo extremamente preconceituoso dizendo que quem usa NetBeans está perdendo tempo e dinheiro, minha experiencia é o contrario da sua, eu perdi TEMPO E DINHEIRO, tentando desenvolver interface grafica com o VEP, então descobri o NetBeans com o Metisse. O NetBeans resolveu meu problema e sou mais um usuario feliz com NetBeans para desenvolver projetos na arquitetura J2SE. =]

Daniel_Quirino_Olive

Qual a dificuldade em se abrir o update manager do Eclipse e instalar o VEP a partir dele?

DeiversonBH

Seria interessante fazer uma avaliação do Eclipse e do Netbeans, baseando-se nos 10 princípios da heuristica de Nielsen (1993), Cognitive Walkthrough e se tratando da avaliação explícita de qualidade, poderiamos adotar as métricas da ISO 9126-2.

Então fica ai a dica! Lipe, faz sua comparação usando as métricas de Nielsen, CW e da ISO 9126-2.

Se eu tivesse tempo sobrando, eu faria esses relatórios, e depois cruzaria, gerando um outro relatório de conclusão. =)

Abraços, fui!

PS: Tomem cuidado com a generalização, por que é ela é um dos principais fatores que originam os preconceitos…

RafaelRio

Além da Matisse, o Netbeans 5.5 tem umas características que para mim são importates: suporte para UML, permitindo até fazer engenharia reversa de código já escrito, um editor de xml fera, SOA e BPEL. Bem, na verdade, os dois últimos ainda não são importantes pra mim… Mas eles estão lá.

Tem um wizard que transforma as tabelas de uma base de dados em Entity Beans. Não me considero preguiçoso, nem mesmo “preguiçoso”, só não curto perder tempo e penso que o que pode ser automatizado deve ser automatizado.

Eu acho o Eclipse mais bonito, e isso é motivo de orgulho pro pessoal envolvido com swt. O processo de compilação no Netbeans poderia ser parecido ou igual ao do Eclipse. Se bem que acho que os vínculos entre projetos funcionam melhor no Netbeans, como já foi dito aqui.

E fiquei muito curioso com as capacidades de code-completion do Eclipse, já que foi dito várias vezes aqui que isso funciona bem melhor no Eclipse do que no Netbeans. Vou ficar mais atento.

Mas, depois de ler toda essa thread, resolvi “partir pra ignorância”: vou usar as duas IDE’s, pelo menos por enquanto, dividindo por projetos que eu ache que funcionem melhor com as capacidades de cada IDE. Clientes desktop, por exemplo, estarão no Netbeans.

É um assunto bem espinhoso, digno de TCCs (trabalho de conclusão de cursos). Aliás, é justamente o tema de um dos meus colegas.

T+!

jmp

netbeans é um saco de bugs, layout nao é o maior problema do swing, o swing é o problema. Swing fede, e muito. Qualquer um que ja precisou fazer jtable útil sabe disso

Enfim, o eclipse tambem tem umas coisas chatas… e a documentacao nao consegue acompanhar o desenvolvimento. Eu fico irado quando to lendo documentacao e a coisa “nao bate” com o que eu estou vendo na tela.

Os bugs do netbeans sao tao absurdos que acontecem até no studio creator, exatamente o mesmo bug, louco.

cv1

Amen.

A

LIPE,

parabéns pela iniciativa. Só o debate constrói. O problema é fazer as pessoas entenderem isso … :wink:

Eu uso o Eclipse, mas nunca tentei o Netbeans.

Gostaria de levantar outra questão: qual o significado da mudança de estratégia da Sun ao voltar a investir pesadamente no NetBeans? Será que eles tiveram problemas com o pessoal do projeto Eclipse e decidiram ser independentes? Será que isso faz parte de uma estratégia para tornar as ferramentas e o Application Server deles mais aceito pelo mercado? O que vcs acham?

Leozin

como se no eclipse não tivesse matisse tsc tsc

legal que o pessoal prefere a facilidade em vez de tentar um pouco, ajeitar do jeito que lhe convém e ter uma produtividade triplicada…

bom mas fazer o que…

RafaelRio

Leozin, sinceramente não entendi.

Que matisse no Eclipse? Tem plugin, coisa e tal? Qualquer coisa que triplique a produtividade é do meu interesse!

neofito

RafaelRio:
Leozin, sinceramente não entendi.

Que matisse no Eclipse? Tem plugin, coisa e tal? Qualquer coisa que triplique a produtividade é do meu interesse!

Tem sim, mas é no MyEclipse, que é pago.
http://www.myeclipseide.com/ContentExpress-display-ceid-77.html

jmp

matisse não é a super-solução de todos os problemas. Existem meia duzia de apis aí que facilitam layout. Matisse não deveria ser grande peso na escolha.

cv1

Alias, desenhador de tela nao deveria ser la grande peso na escolha. Ja trabalhei em sistemas Swing e 90% do que eu fazia era refatorar a desgraceira toda usando o bom e velho IntelliJ, 9% era esperar o build e os testes de aceitacao, e 1% era desenhar tela.

leo_mf

Caramba mew!

O que o netbeans fez para esse cara? Só falta crucificar o netbeans.

Em toda minha experiência. As pessoas que não gostão(ou odeiam) o netbeans são péssimos programadores J2EE e nem sabe mexer no eclipse direito.

Eu gosto muito do netbeans por ele ser bem prático em alguns aspectos, mas uso mais o eclipse por causa da refatoração(facilita bastante o trabalho). Eu tenho uma birra com com eclipse ultimamente porque ele trava demais.

A

leo_mf:
Caramba mew!

O que o netbeans fez para esse cara? Só falta crucificar o netbeans.

Em toda minha experiência. As pessoas que não gostão(ou odeiam) o netbeans são péssimos programadores J2EE e nem sabe mexer no eclipse direito.

Eu gosto muito do netbeans por ele ser bem prático em alguns aspectos, mas uso mais o eclipse por causa da refatoração(facilita bastante o trabalho). Eu tenho uma birra com com eclipse ultimamente porque ele trava demais.

Você se deu conta que a última resposta deste tópico era de 2006?

adriano_si

AbelBueno:
leo_mf:
Caramba mew!

O que o netbeans fez para esse cara? Só falta crucificar o netbeans.

Em toda minha experiência. As pessoas que não gostão(ou odeiam) o netbeans são péssimos programadores J2EE e nem sabe mexer no eclipse direito.

Eu gosto muito do netbeans por ele ser bem prático em alguns aspectos, mas uso mais o eclipse por causa da refatoração(facilita bastante o trabalho). Eu tenho uma birra com com eclipse ultimamente porque ele trava demais.

Você se deu conta que a última resposta deste tópico era de 2006?

E em 2006 o NetBeans era MUITO ruinzinho… Aliás… no quesito Evolução Geral o NetBeans subiu uns 15 degraus e o Eclipse só uns 5…

Abs []

Criado 18 de maio de 2006
Ultima resposta 11 de nov. de 2010
Respostas 112
Participantes 41