Entao, eu acho pensar que o Swing eh uma linguagem “q nao é lá grandes coisas” meio deturpado. Vejo q a maioria pensa em programar como no Delphi, pegando componentes prontos arrantando na tela e td esta pronto.
Veja o Swing como uma biblioteca onde vc deve desenvolver componentes q melhor sirvam para seu trabalho. Eu ja desenvolvi varias classes onde monto uma tela com muito pouco codigo, td otimizado e centralizado. Quero, por exempo, montar um campo onde ira digitar um codigo de algum cadastro, insiro somente uma linha de codigo onde é desenhado em tela um label com a descricao, um campo textfield do jeito que eh preciso para se lançar o codigo e ainda botao para consultar os itens cadastrados, onde este chama um dialog com o q precisa ser consultado. E isto eh soh um exemplo, pois tenho classes que servem pra diversos tipos de campos. Tudo isso usam OO mesmo, criei uma classe onde tem o basico da programação e dai crio outras classes extendidas desse para cada tipo de campo.
Criei layout manager do jeito que eu quero dispor os itens, look & feel personalizado e muito mais. Vc nao pode começar a programar em Java achando q sempre vai digitar aquela imensidão de código. Ai sim, eu concordo que é bastante código, mas vc pode otimizar isso e muito. Há ate, pra quem gosta de usar o netbeans, como importar para a palheta de componentes o que é criado.
Todos tem q tirar da cabeça que o Swing eh uma “biblioteca pronta”. Claro, pode se dizer q estou falando besteira, pois com o Swing da pra fazer muito coisa, mas trabalhar soh com o q eh nativo dele sem duvida q eh muito trabalhoso.
Um exemplo eh o projeito SwingLabs, eles desenvolveram varios bibliotecas em cima do Swing pra facilitar o trabalho de desenvolvimento ou explorando outros recursos.
Centralizar o trabalho em classes é melhor e fica até mais simples para se corrigir eventuais bugs do sistema.
Fica ai minha opinião.