Produtividade com Java

8 respostas
black_fire

Resolvi fazer um teste de produtividade.

Pequei uma aplicação desktop desenvolvida em Delphi que pelos registros Levou 18 horas para ser finalizadas, Venda e Atendimento para o callcenter onde trabalho. Este é um piloto de migração das estações para Linux.

Desenvolvi toda a aplicação com Swing (NetBeans e Eclipse), Fiquei espantado quando finalizei a aplicação com 21 horas de desenvolvimento.

Não notei perda de produtividade com o Java (esta nova aplicação possui alguns recursos a mais que a outra), a unica coisa sacal foi o layout da aplicação.

:arrow: Não achei que a aplicação ficou pesada e notei que vale apena desenvolver desktop com java. Muito mais recursos que o delphi e maior integração de Rede…

:arrow: Consumo de memória da aplicação:

  • Delphi: 18.000 K
  • Java: 26.000 k

Muito bom mesmo, se tem alguem por ai que está com dúvida de usar o Swing para desenvolver aplicações desktop, vai fundo. Durante o desenvolvimento do projeto notei que muita coisa é “mito”.

Valeu pessoal um abraço… :wink:

8 Respostas

R

Ótima a tua idéia de comparar…

Mas não entendi. Porquê os dois ?

Um abraço…

urubatan

NetBeans para design da aplicação (GUI) e eclipse para o codigo (tem recursos para esta parte que não existe em quase nenhuma ide (tirando as baseadas em eclipse :slight_smile: )

B

Uso o Eclipse… mas liste ai alguns destes ecursos urubatan…

Gustavo Guilherme BacK

urubatan

só o refactoring dele ja acho que faz valer a pena
mas tem muitos recursos de geração de corido (no 3 tem mais ainda)
criar get e set automaticamente, no 3 gera constructor também

importar automaticamente as classes utilizadas, detectar antes de compilar os erros de digitação e em amguns sugerir e corrigir automaticamente, …
e mais um monte de coisas que não lembro agora :slight_smile:

B

Eu além do Eclipse utilizo o IntelliJ IDEA. Esta IDEA não apresenta recursos de Wizards, não integra com o tomcat 4.x ainda, e vem “bem seca de recursos” por assim dizer, no entanto parece que ela, literalmente adivinha o que você vai fazer. Eu atualmente uso ela pra mexer com .xsd, jsp, e JSTL. Ela simplesmente ajuda muito… mas não consegue concorrer com o eclipse.

Umas das coisas que eu adoro no eclipse são o recurso de Perspectivas; o debug; agora no 3, o view do javadoc; a integração com o ant; e a facilidade pra executar as aplicações, seja web, gui, ou os JUnit’s.

Gustavo Guilherme BacK

B

Eu sempre tinha usado o NetBeans, mas depois que entrei no GUJ e vi todo mundo falando de Eclipse resolvi testar pra ver se gostava.
Gostei muito de editar código java nele e do compilador. O compilador avisando aquelas warnings é muito bom.

Mas pra programar web ainda prefiro o NetBeans. Usei o Lomboz no Eclipse e vi que ele é muito bom, mas ainda prefiro a integração Tomcat+NetBeans. No NetBeans tem auto-completar de taglibs e o monitor de HTTP, que eu não achei no Eclipse. Por isso, de volta ao NetBeans…

Parece que ninguém usa NetBeans aqui no GUJ (com exceção de aplicações GUI). Até hoje eu não entendi o porquê.

cv1

Pelo amor de deus, parem com a guerra de IDEs. Usem o que voces acharem que for melhor, desde que seja o Eclipse :wink: :smiley:

Mas entao, Rodrigo… quais foram as coisas mais dificeis de fazer em Java, e quais as mais chatas no Delphi? Qual das duas foi mais chata de testar? E manter (tente adicionar uma feature nova nas duas e veja qto tempo a mais vc gasta, por exemplo)?

black_fire

Durante o desenvolvimento deste sistema notei alguns pontos interessantes.

- Manunteção da regra de negócios.
Ficou muito mais fácil de efetuar alterações pois como fiz uma classse com o formulário e uma outra com extends do formulário, nessa fiz toda a regra de negócios. O código fica muito mais limpo e visível.
Como o Java quase que te obriga a trabalhar orientado a objetos, você tem classes distintas para efetuar cada função da aplicação.
Uma classe para Cadastro, outra de acesso ao banco, outra controlando as threds, etc…
Houveram alguns problemas durante a implantação, mas foi muito menos traumático corrigí-los.
Este sistema faz uma conexão TCP/IP com um servidor, esta implementação foi muito mais simples com o Java.

- Consultas de banco de dados
O retorno das consultas com o Java foi muito mais sacal. Tive que fazer uma Classe para cada modelo de exibição nas JTable. Foi um dos momentos que gastei muito mais tempo que no delphi.
:idea: Estou pensando em algo para resolver este problema, tipo criar um JTable próprio para exibir RecordSets.

- Manunteção do layout.
Este é um ponto muito delicado. Qualquer alteração errada pode zoar todo o seu formulário. O consumo de tempo de desenvolver os layouts são muito altos. Sem contar nas ordens do TAB. Complexo mas tem uma grande vantagem quando você cria um formulário em java você pode criar novas instâncias deste formulário fácilmente o mesmo já não acontece com o Delphi (até dá pra fazer, mas de 100 sistemas delphi, 1(um) vai ter).
Agora no novo sistema o usuário pode executar várias consultas simultâneas, Fiz uma limitação no código, pois dependendo da quantidade de janelas posso ter problemas de lentidão no sistema. Dá pra fazer em delphi, mas requer muito mais tempo.

PS: Fazer uma “Tela” “nas coxas”, tanto no delphi quanto no Java é rápido…

- Threads
Criar threads em java é bricadeira de criança. Em delphi já é muito mais complexo e requer muita atenção para não ter SERIOS problemas de memória.

- Adicionar uma feature nova
Como tudo é feito em objetos, em um determinado ponto do seu projeto você ja tem quase tudo pronto. As duas tecnologias ficam pau a pau neste ponto.

:arrow: :arrow: Criar um projeto com reaproveitamento de código é tão complexo em Delphi quanto em Java. Fazer tudo proceduralmente em delphi deixa o desenvolvimento muito, mas muito mais rápido. O único grande problema é que se você tiver que criar outro projeto semelhate você perde de Loge pro Java.

:arrow: Sempre que vou criar uma classe me faço a seguinte pergunta: O que nesta classe é genérico e o que é particular dela. Respondida esta pergunta ao invés de criar uma única classe engessada, crio duas e dependendo do casso algumas interfaces e classes abstratas…

Acho que é isso.

Um grande abraço galera…

Criado 9 de outubro de 2003
Ultima resposta 9 de out. de 2003
Respostas 8
Participantes 6