- Cada capa tiene un rol y una tarea unica
- tienen que haber capas de alto y bajo nivel
- las de alto nivel tienen mas interacion con el usuario
- las de bajo nivel lee y escribe datos o interactua con el hardware
- cada capa crea una abstraccion de la funcionalidad que ofrece
- las capas no se conocen entre si
- se conectan por inyeccion de dependencias(IOC)
- la cantidad de capas es de acuerdo a tus necesidades
- se encarga de manejar la interacion entre un cliente y la aplicacion
- entrega y solicita informacion
- interpreta solicitudes del usuario en acciones para las capas de negocio
- Domain or Bussines
- es la que contine la logica de negocio
- esconde el acceso a datos
- Services
- valida los datos de la capa de presentacion
- se conecta con otros servicios como amazon s3, oauth
- se encarga de comunicarse con las bases de datos
- guarda y extrae informacion de las bases de datos
- based in Robert C. Martin