Pessoal, sou novato em java e gostaria de saber quais as reais vantagens de se usar java para desenvolvimento de aplicações desktop. Como ainda programo muito em VB, especialmente em aplicações comerciais e erp’s, fiquei um pouco preocupado com o uso da linguagem java para esse tipo de aplicação, pois, a principio - e posso estar enganado - a curva de desenvolvimento/custo de um sistema em Java é bem maior que os sistemas desenvolvidos em linguagens como o VB e Delphi. Sei que existe o atenuante da “independência de plataforma”, porém um cliente que tem todo seu parque de máquinas rodando sob a plataforma windows (ex. VB + Oracle), não vai da noite pro dia jogar todo o investimento efetuado e trocar tudo para Linux ou qualquer outro sistema. Sei também que os sistemas que estão atualmente rodando não precisam refeitos em Java, simplesmente porque o Java é melhor, afinal de contas o sistema está atendendo o cliente. Vejo o Java como uma forma de agregar valor ao sistema, especialmente no desenvolvimento de novos módulos, buscando integração com a Web. Sei que estou sendo um pouco pessimista, mas lembrem-se que estou tentando quebrar meus paradigmas - ainda fortemente ligados a aplicações desktop - e também estou tentando enxergar o problema com uma visão mais crítica, voltada especialmente ao fator custo/benefício, que é a forma como as empresas olham para a informática hoje em dia.
Agradeço a todos que postarem suas opiniões, pois busco uma orientação nessa nova fase que iniciei.
Um abraço a todos, de mais um Javaniano !
Se o sistema atende às vontades do cliente, ótimo, deixe-o como está. Mudar para Java/.NOT só para aproveitar a moda é besteira. Agora, se você estiver em dúvida se você deve fazer o upgrade destes sistemas de Microsoft DNA para .NOT ou para Java, não pense duas vezes: Java. Por quê? Sem entrar em méritos técnicos (que podem resultar em dias e mais dias de discussão), Java é a melhor escolha porque você pode ter certeza de que as coisas não irão mudar de uma hora para a outra, como a Microsoft faz com suas tecnologias, assegurado assim que seu aplicativo não vire um legado do dia para a noite. Exemplos? A história do VB é O exemplo clássico da estratégia da Microsoft para “estimular a inovação”: os upgrades do VB nunca eram compatíveis. Seja de VB3 para VB4, de VB4 para VB5, de VB5 para VB6 e, finalmente, de VB6 para VBnotYET, nunca houve compatibilidade entre versões, o que lhe forçava a:
:arrow: reescrever seu aplicativo para que ele pudesse suportar novas features;
:arrow: aprender novos conceitos para conseguir reescrever seu aplicativo acima.
E nada impede que aquela de Redmond faça o mesmo com .NOT. Agora, responda-me: isso protege seus investimentos e o seu conhecimento? I don’t think so.
Alrite, FUD FUD FUD. Mas um bom exemplo do que eu quero lhe dizer está na minha HD. Tem classes aqui que foram criadas em 1998, quando eu comecei a brincar com Java. E, adivinha: elas ainda funcionam, e compilam direitinho se eu quiser usar a última versão de J2SE. Agora, faça um teste: tente recompilar um aplicativo VB6 no VS.NET. Dica: não funciona
.
Agora, pensando em função custo/benefício, a curtíssimo prazo, usar Java não é um bom investimento. A curva de aprendizado é um bem menos suave do que VB, por exemplo, pois, além de ter que aprender uma nova linguagem, é preciso aprender todo um novo paradigma. Mas, com o tempo, você consegue colher os frutos deste investimento, pois com Java você tem opções que não existem no mundo Microsoft (como ferramentas gratuitas e de alta qualidade). Além disso, Java lhe abre um novo mundo de opções que não estavam disponíveis até então, como aplicações Desktop para outros sistemas operacionais, como Linux, Mac OSX, Solaris e até mesmo Windows.
Hmmm, é isso, por enquando. Ahhh!! Bem vindo ao GUJ!
Não pense que Java é apenas para Aplicações Web. Ele também é ótimo para aplicações desktop e a API é muito rica e madura para isso.

realmente Java nao é apenas para WEB
serve para Desktop e para aplicativos com baixa memória como Palm, Celulares e afins
só uma resalva que eu tive quandoeu comecei a mexer com Java…
Java serve sim pra Desktop, mas é bem mais pesado em comparação a VB e Delphi. Caso voce ou seus clientes não tenha maquinas acima de 500mhz com 128mega de ram pra cima, me desculpe, a performance vai ser lenta…
eu lembro logo que eu comecei a mexer com Java (eu vim do delphi, que ainda mexo muito com ele) e comecei desenvolver meus primeiros Frames em um Pentium III 450 mhz com 128ram, nossa, até desanimei de como era lento comparado a VB e Delphi… agora com um XP2000 eu nem sinto diferença…
foi só uma dica
Concordo 100% com o Daniel Quirino Oliveira. E JAVA é uma tecnologia criada para desenvolver novas tecnologias, ela esta sempre olhando lá na frente. E “está em todos os lugares”, por isso pense bem onde deseja investir sua carreira, pois várias vezes nos encontramos tendo que aprender uma coisa nova e jogar fora outra. Com java isso não acontece, tudo que vc aprende em java server como base para as novas tecnologias do java, vc só soma e torna mais forte sua base de conhecimento em Java. O notYet (hahha gostei disso), é um tipo de "eu me rendo, JAVA é melhor, porém compre minha cópia piorada que vem com uma IDE muito legal, e vc escreve para meu Windows na linguagem que ja está bitolado ". E por exemplo a Borland e Micro$ofit vão ganhar uma nota com cursos sobre VB.NET e Delphi.NET para seus programadores de vb e delphi. Isso não existe no java, nunca vi um curso de java 1.4 para desenvolvedores java 1.3.
Bem é isso aí, aposte sua carreira na tecnologia que não te sacaneia.
A curva de aprendizado de Java é um pouco maior que de outras linguagens mais você não joga tudo fora quando lançam outra versão.
Você pode se matar de estudar sem se preocupar, pois tudo o que você aprende você usa em J2EE, J2SE, J2ME, JSP etc.
Concordo com o Manchester que Java é mais lento, mas o desenvolvimento de novas tecnologias de compiladores e VMs não para e se compararmos com as primeiras versões o código gerado é bem mais otimizado.
Acho que essa de lento não rola mais, o java tem um tempo de carga maior, mais não é “lento”, claro código nativo sempre será mais rápido que interpretado. mais com a lei de Moore
a diferênça vem ficando cada vez menor.
Por exemplo, uso o JBuilder8, Eclipse, Together e na minha máquina, esta tão rápido como um Delphi. E olhe que minha máquina possue só um processador de 1.4GB e 500 de RAM, isso ja esta fraquinho. Tudo bem que ainda tem muita gente usando lata velha por aí, mais logo isso vai mudar.
eu falei que é mais lento comparando aos computadores mais antigos, ou seja, os computadores que meus clientes tem :lol:
infelismente aqui em Bauru, a area de tecnologia é fraca, as empresas ainda nao abriram os olhos pra ver que tecnologia, que gerar informação é o futuro, e ainda tem medo, ainda nao investem em computadores…
tenho cliente que roda programa feito em delphi em um Pentium 133mmx com 64de ram, eu acho que fica horrivel, mas ele ainda acha que esta numa velocidade boa… agora imagina se eu ponho Java pra desktop la???
infelismente aqui ainda esta assim, mas concordo que novas tecnologias, VM são realmente mais lentas que arquivos compilados nativos para o sistema e Java com as maquinas boas ja esta tao rapido quando Delphi e VB, mas ainda tenho clientes com maquinas antigas, e como sao os clientes que me pagam, ainda dependo deles… por isso na maioria dos casos estou tentando migrar para J2EE onde rodando em browser fica mais rapido que Java Desktop…
tudo questão de testar e for a melhor opção para solucionar a questão. Delphi me ajuda muito em questão desktop windows e java detona em desktop multi plataforma, Web e futuramente J2ME
Não sei com vocês mais escritórios de contabilidade são verdadeiros museus.
Estou desenvolvendo um sistema que roda em vários 133 e não encontrei problemas de velocidade, a não ser com o carregamento é claro. O servidor roda num 1.1 (senão seria um desastre!). 