Alexandre, a questão de se ter ou não duas ou mais camadas não quer dizer que a arquiterura esteja ruím.
Primeiro tem-se que olhar para o problema, depois sim, analisar um modelo de arquitetura ideal a ser utilizado.
Um modelo bastante difundido na net é o Model-View-Controller (MVC), entretanto, como todos os outros, existem os pontos positivos e negativos, dá uma pequena lida que você poderá tirar suas conclusões, para aplicações muito simples e que não irão sofrer mudanças nem "acréscimos", o modelo de duas camadas pode sim, ser uma solução.