Separando a Interface Gráfica da Regra de Negócios

Estou começando no java e to fazendo um sistema simples para ver se aprendo , dai me surgiu uma duvida como faria para separar em camadas a aplicação ? por exemplo um programa de orçamento gostaria de separar a regra de negocios da interface gráfica , mas não sei como proceder ?

se for em web, da uma olhanda em http://jakarta.apache.org/struts

não seria para trabalhar com desktop

vc pode fazer um pacote com classes q facam apenas as telas de apresentacao e outro com as classes q contem operacoes de banco de dados, por exemplo…

falow