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…
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.
C
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
maior_abandonado
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
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…
luistiagos
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…
C
crmoreira
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?
Valeu Polverini, já baixei o FX Scene Builder para dar uma olhada…
[]'s
maior_abandonado
crmoreira:
…
…alguma dica de GUI designer para o Eclipse ou o Netbeans é mais recomendado?
[]'s
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…
C
crmoreira
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.