Why too heavy?

Olá pessoal, continuando as sagas que tanto sucedem por aqui, venho aqui tentar entender o pq q se torna tao pesado as aplicações feitas em java para desktop? Sempre se fala que aplicações desktop daqui uns tempos vai morrer…Mas eu acho muito dificil isso ocorrer, pois sempre surgem novas aplicações (nichos) como ERP’s da vida, sistemas p/CRM e etc…
Mas quero mesmo de facto entender pq aplicacoes java desktop sao tao pesadas? O que fazer para diminuir esse peso? se é que há algo para ser feito que possa diminuir tal peso…
E qual requisito minimo mesmo pras maquinas clientes que hao de rodar aplicacoes de tais feitios?
Um grande abraço e t+

Obs: Realmente o post que nosso amigo postou com o titulo de “ja to ficando louco” é realmente um facto constante pra muitas, mas muitas pessoas mesmo… pois só java se torna um mega universo de informação, tecnologias, etc… .que voce muitas vezes nao sabe nem pra onde se direcionar e poder seguir de fato.
Embora como o RAfael tenha falado que o importante é focar no mais importante para o momento de cada um… Nao ha como voce se prender e ignorar o que voce ouve ou ver ou ler? vc fica louco pra saber sobre tal… entao ai é onde a gente se quebra na emenda…
Bem… por enquanto fico por aqui… e espero um esclarecimento de voces para minha duvida mencionada e postada acima

Tem uma série de coisas que diferenciam uma aplicação java de uma aplicação nativa:

  • Binário final compatível com qq plataforma;
  • É necessário executar a sua aplicação em cima de uma JVM;
  • Componentes swing são todos desenhados em Java;
  • E uma série de outras coisas que o pessoal aqui do GUJ pode explicar melhor do que eu, pois não trabalho com aplicações Desktop.
  • A JVM passa por melhorias contínuas de ajuste de performance a cada release do JDK. Assim uma aplicação lenta hoje, pode ser muito rápida amanhã.
  • Uma alternativa ao Swing é o SWT (biblioteca nativa de componentes para aplicações graficas). Com ele vc pode melhorar consideravelmente a performance das aplicações gráficas. O incoveniente é que seu código vai ficar “preso” à existencia de uma implementação do SWT para qualquer plataforma.
  • Se precisar executar aplicações em máquinas muito modestas, considere escrever o cliente em outra linguagem (ex: Delphi, C++) e coloque as regras de negócio em um Server Java e use Corba/TCP-IP/WebServices para integrar as camadas.

[quote]
E qual requisito minimo mesmo pras maquinas clientes que hao de rodar aplicacoes de tais feitios?[/quote]
Agora chegamos ao ponto que eu estava esperando!
Com as atuais máquinas existentes no mercado é impossível comprar uma máquina nova com baixa performance. E memória hoje é muito barato!

Estou executando IDEs de ambientes de desenvolvimento relativamente pesados em um Pentiun III 1 GHz e com 512 de RAM. Posso garantir que executa tão rápido como uma aplicação nativa. Se tem um overhead na execução da aplicação é compensado no hardware, tornado este fato praticamente inperceptível para a maioria dos mortais. Note que a minha máquina já está um pouco defasada, mas é um ponto de partida para a execução de aplicações desktop em Java de maneira descente.

[]s, Welington B. Souza

Bom… existir sempre vai sim… como até hoje empresas usam COBOL e Clipper… mas atendência é aplicações Web… tem coisa mais facil e prática de se desenvolver do que uma aplicaçãso que vai ser portavel, seu cliente já vai estar pronto(Browser :)) e ter tudo centralizado nos servidores sem se preocupar com os clientes…

Mau uso do Swing… o Swing… tente usar o java apenas como backend… e veja a diferença…

[quote=“Dayvson Clauber”]Obs: Realmente o post que nosso amigo postou com o titulo de “ja to ficando louco” é realmente um facto constante pra muitas, mas muitas pessoas mesmo… pois só java se torna um mega universo de informação, tecnologias, etc… .que voce muitas vezes nao sabe nem pra onde se direcionar e poder seguir de fato.
Embora como o RAfael tenha falado que o importante é focar no mais importante para o momento de cada um… Nao ha como voce se prender e ignorar o que voce ouve ou ver ou ler? vc fica louco pra saber sobre tal… entao ai é onde a gente se quebra na emenda…
Bem… por enquanto fico por aqui… e espero um esclarecimento de voces para minha duvida mencionada e postada acima[/quote]
Minha opnião sobre isso é…
…não olhe para o Java e escolha um caminho, escolha o caminho e olhe para o Java depois.

Estimasse que existam hoje aproximadamente 220 bilhões de linhas de COBOL sendo usadas em produção, isso não some da noite pro dia.

  1. não acho q java deva ser usado apenas no backend;
  2. não acho q as aplicações swing sejam assim tão lentas;
  3. aplicações desktop sempre serão necessárias, independente da Telefonica fazer o favor de desaparecer daqui ou a Anatel resolver criar vergonha na cara!

Todo mundo diz que o Eclipse roda lento, que pra iniciar é um pé-no-s. Tenho um 2.2 com 512 de ram; Estou estudando o Eclipse faz 1 mês (+ ou -) e fiquei supreso como ele inicia rápido (não é o Word sendo chamado pela segunda vez, mas é tolerável) e rodando não perde nada (nada mesmo) para uma aplicação nativa.

Sempre que posso tenho usado aplicações feitas em java. Até meu jogo de xadrez é feito java (swing) acessando um chess-server. O jEdit, rodando, dá vontade de chorar de tão limpinho e rápido que ele roda (mesmo na minha máquina antiga, um Atlhon 700 com 256 ram.

Não mesmo… aonde existir a frase “Não se mexe em time que ta ganhando!” principalmente :slight_smile:
Não se vai migrar tudo da noite pro dia mesmo… muitas empresas não necessitam e também nem sabem como fazer… e como o sistema é muito grande e complexo… e está funcionando… eles preferem ainda manter o suporte em cima desses sistemas já existentes…

Pois é…o Swing muitas vezes é o culpado pela lentidão, mas aí vai ver a máquina e é um AMD K6-2 500, com 256 de RAM e uma placa de vídeo Trident 9440!! Aí nem o Windows fica rápido!! :stuck_out_tongue:

Sem contar na má utilização do Swing!

Pra ter uma idéia, quem quiser pode ir baixar o programa abaixo e ver uma aplicação Swing que roda relativamente bem, mesmo sendo TOTALMENTE gráfica (isto é, desenhada):
http://www.pelludus.com.br/meppa/download.jsp

[quote=“r_linux”]
Não mesmo… aonde existir a frase “Não se mexe em time que ta ganhando!” principalmente :slight_smile:
Não se vai migrar tudo da noite pro dia mesmo… muitas empresas não necessitam e também nem sabem como fazer… e como o sistema é muito grande e complexo… e está funcionando… eles preferem ainda manter o suporte em cima desses sistemas já existentes…[/quote]

O interessante desse nicho de sistemas legado é o fato da necessidade de migração estar crecendo exponencialmente a cada ano.

Conheço empresas que tem sistemas vitais que operam em hardware com mais de 15 anos, o fornecedor de hardware já informou que não dará mais suporte, o do SO disse o mesmo, e o do sistema está cobrando fortunas pela manutenção.

Não é dificil achar empresas de medio porte aqui em São Paulo com aplicações rodando em VAX e algum unix ancião, system-v ou xenix por exemplo.

Mesmo que a empresa não tenha grandes mudanças em seu foco ou algo do tipo… sempre a novas necessidades nos sistemas.

Isso é Fatal… nem todas as empresas param no tempo… ainda mais fabricas de Hardware e Softwares, não tem como a Ford ficar fabricando peças do Corcel a vida toda…

Em um pais subdesenvolvido não é mesmo… ou até em paises desenvolvidos… depende muito do foco da empresa e suas necessidades.
:lol: :shock: