Para onde ir? [RESOLVIDO]

Pessoal,

Sou desenvolvedor Java Web, um entusiasta do Java desde a versão 1.2. Hoje desenvolvo para Web utilizando Java com Hibernate, Struts, Spring, VRaptor, etc…

Agora preciso desenvolver para desktop, são aplicações com acesso a banco de dados, importação de arquivos e por aí vai, nada de interface muito elaborada. A dúvida, qual é a ferramenta mais indicada? Ainda o Swing ou JavaFX tá emplacando?

Preciso de uma ferramenta que me dê a mesma agilidade que tenho no desenvolvimento Web, preferencialmente com suporte a MVC, etc…

Desde já agradeço,

Dai depende… que tipo de coisa vc vai usar? Vai precisar de comunicação com servidores? envio de soquetes? banco de dados sera na maquina ou remoto?
muitas transações ou pouca? o que é mais crucial? interface gráfica ou escabilidade da app? vai precisar de acesso nativo na maquina? comunicação a impressoras fiscais, hardware em geral, qual é a configuração de hardware das maquinas onde o software será instalado, etc…

Tudo isto importa a se verificar uma ferramenta de alta produtividade para desenvolvimento desktop.

Olá Luis,

Bom, preciso de suporte a DB local e remoto, baixo volume de transações, acesso somente ao sistema de arquivos para fazer importação e exportação de dados de planilhas para bancos de dados. Não preciso de acesso às portas de comunicação do sistema. A interface gráfica é importante, mas não determinante. No passado resolvia estes problemas com o Swing, mas ouvi falar que a Oracle pretende não suportá-lo mais, em breve.

As possibilidades que encontrei até agora foram:

1.Swing
2.Titanium Studio
3.JavaFX

Mas realmente não sei qual caminho seguir…

Obrigado pela colaboração,

[]'s

[quote=crmoreira]Olá Luis,

Bom, preciso de suporte a DB local e remoto, baixo volume de transações, acesso somente ao sistema de arquivos para fazer importação e exportação de dados de planilhas para bancos de dados. Não preciso de acesso às portas de comunicação do sistema. A interface gráfica é importante, mas não determinante. No passado resolvia estes problemas com o Swing, mas ouvi falar que a Oracle pretende não suportá-lo mais, em breve.

As possibilidades que encontrei até agora foram:

1.Swing
2.Titanium Studio
3.JavaFX

Mas realmente não sei qual caminho seguir…

Obrigado pela colaboração,

[]'s

[/quote]

interface gráfica em ambiente desktop na plataforma java é um problema viu… o swingx parece que foi parado, o javaFX não se tem noticia de coisas dele, eu ao menos não vejo nada faz tempo… você ainda fica no swing mesmo… quanto a framework MVC você está na mesma também, eu ao menos nunca vi…

de resto você ainda pode usar frameworks que não dependam do container como o spring para IOC por exemplo ou se você gostar de CDI, pode usar o Weld… o investimento da oracle na parte desktop do java parece ser bem curto…

Já pensou em usar C#? Caso seja uma app pra windows é uma boa… Ou swing mesmo se tiver mais familiarizado com java, para sua necessidade creio que não terá muito problema…

Obrigado pessoal, acho que vou de swing mesmo, até porque uso Mac e também não sou muito simpático ao C#…

…alguma dica de GUI designer para o Eclipse ou o Netbeans é mais recomendado?

[]'s

se for usar Swing pode usar o window builder do eclipse, par javaFx recentemente foi lançada uma versão beta do construtor de FXML http://fxexperience.com/2012/04/announcing-javafx-scene-builder-public-beta/

Valeu Polverini, já baixei o FX Scene Builder para dar uma olhada…

[]'s

[quote=crmoreira]…

…alguma dica de GUI designer para o Eclipse ou o Netbeans é mais recomendado?

[]'s
[/quote]

essa é uma questão delicada que aqui no guj as vezes beira a discurssão de religião… o mais usado é o matisse do netbeans, porém muita gente depois de construir o layout com ele pega o código fonte gerado, copia e cola no eclipse e continua desenvolvendo no eclipse… se você for fazer isso nem começe usando o matisse, por que o código fonte gerado por ele é um monstro, tanto em tamanho quanto em beleza… se for fazer isso aconselho usar algum dos do eclipse que pelo que dizem gera um código bem melhor…

o que eu aconselho é você “OU” fazer na mão usando a API miglayout, pela facilidade comparada aos outros gerenciadores de layout do swing, “OU” usar o matisse para desenvolver, guardar o projeto no netbeans e continuar usando o matisse para manter o projeto, codificando o minimo possível a interface. Se você preferir codificar no eclipse, mantenha um projeto no eclipse com a regra de negocio, outras camadas que não são view, gere o .jar dessa parte do projeto e use-o no netbeans para acessar essas classes pelas da tela e o que envolva view (aliás com o Weld esse esquema iria ser uma mão na roda para você). Claro que essa é a minha opinião, é como eu faria, não uma verdade absoluta…

Valeu maior_abandonado!

Dei uma olhada no MigLayout, é realmente o que eu preciso para resolver o problema utilizando o Swing. Enquanto isso vou estudando o JavaFX, que parece a opção da Oracle para o desktop - aparentemente já era o opção da Sun também.

Agradeço a todos que colaboraram.

[]'s