Как делать GUI в Java?
не привычный. но не удобный. описание формы отдельно, логики отдельно, css стилей отдельно приносит выгоду, когда нужно менять программу много-много раз. Тогда понимаешь насколько удобно разделение этих вещей.  Такое разделение дает гибкость.
Правильнее разделять логику и представление.