Boas,
Venho aqui pois tenho a seguinte duvida: Como estruturo o codigo com java swing? Já vi diversos materiais de design patterns, solid, etc… Mas quando vou criar aplicações java swing o codigo fica sempre “feio” e um pouco confuso. Gostava de saber como resolver inconvenientes como o seguinte exemplo:
public void turnModoEdicao() {
if (this.edicao){
if (nomeField.getText().trim().isEmpty() || nomeProfessorField.getText().trim().isEmpty()){
return;
}
this.disciplina.setNome(nomeField.getText());
this.disciplina.setNomeProfessor(nomeProfessorField.getText());
this.disciplina.setEmailProfessor(emailProfessorField.getText());
this.dao.update(this.disciplina);
preecherLabel();
}else{
nomeField.setText(this.disciplina.getNome());
nomeProfessorField.setText(this.disciplina.getNomeProfessor());
emailProfessorField.setText(this.disciplina.getEmailProfessor());
}
nomeField.setVisible(!this.edicao);
nomeProfessorField.setVisible(!this.edicao);
emailProfessorField.setVisible(!this.edicao);
edicao = !edicao;
}
Nao existe código usando Swing que nao fique feio. Data-binding é na unha. Terá que achar alguma solução de terceiro ou criar uma engenhoca caseira pra melhorar isso.
3 curtidas
JavaFX tambem possui esse problema?
1 curtida
Comente seu código e use indentação, utilize da forma que achar conveniente a você
JavaFx é melhor do que Swing nesse aspecto, mas nao é uma tecnologia muito adotada, ficou estável num tempo em que desktop já estava caindo em desuso. Se postar seu objetivo, talvez nem seja a melhor solucao usar desktop.
Neste caso em especifico estou a fazer um programa com foco em organizar coisas relacionadas com a escola (agenda de testes, resultados, media final, trabalhos para casa, etc), segue um print:
Mas tambem tenho em mente um projeto de Hotel Management que estava a pensar fazer em swing
1 curtida
É bacana, mas não se atenha apenas ao netbeans, pratica um pouco no eclipse usando swing.
e sempre fique de olho aqui:
https://docs.oracle.com/javase/8/docs/api/
1 curtida
Esse tipo de aplicação hoje seria feito para web browser ou app mobile.
Obrigado pela dica!
Certo, mas antes de aprofundar nas apps moveis queria ficar com um conhecimento solido em java Desktop. No que diz respeito ao software de Hotel Management JavaFX é a melhor opçao correto?
Swing,
faz uma JFrame, uns menu e pronto, tá lá, essa parte de UI, UX depois você trabalha
1 curtida
Voce precisa definir seu objetivo.
Para aprendizado em relação ao mercado desktop Java, é melhor aprender Swing, pois existem muitos legados. JavaFx é pouco adotado.
Para atender demandas reais é outra história, precisa atender o Negócio da melhor forma e nao a tecnologia escolhida.
1 curtida
o FX substituirá o swing, mas isso vai demorar, acredito que bastante
Para desktop onde o cliente usa Windows, C# é muito mais limpo e produtivo do que Java.
1 curtida