La programación por capas es una arquitectura cliente-servidor que separa la lógica de negocios de la lógica de diseño. Consiste en tres capas: presentación, negocio y datos. Los métodos describen el comportamiento de un objeto y pueden cambiar su estado. La programación en capas permite un desarrollo independiente y más rápido al elaborar componentes para cada capa de forma separada.