En un proyecto de varios niveles, ¿dónde deberían definirse las interfaces?

8

Tengo un proyecto de varios niveles compuesto de tres subproyectos, es decir, proyecto de acceso a datos, proyecto de lógica de negocios y proyecto de presentación, ¿dónde deberían definirse las interfaces? Supongo que debería haber interfaces definidas tanto en DAL como en BLL. En el contexto de las pruebas de la capa lógica de negocios mediante el uso de datos de "prueba" basados en la interfaz, parece que tal vez debería haber un proyecto separado con solo las interfaces.

¿Alguna de las mejores prácticas o ideas sobre cómo debería organizarse esto?

    
pregunta John S 19.12.2016 - 16:35

1 respuesta

8

Un buen enfoque para esto es usar el patrón de escalera:

Entonces,elDALviveenunproyecto,susinterfacesenotro,elBLLenuntercero,susinterfacesenuncuartoyasísucesivamente.

Laideaesquealprobar,porejemplo,lacapadenegocios,solodebehacerreferenciaalproyectodeinterfacesDAL,enlugardearrastrartodoelDALrealy,porejemplo,NHibernatealalcanceparaobteneresasinterfaces.

Porloquesé,estepatróneslacreacióndeGaryMcLeanHallensulibro," respondido por el David Arno 19.12.2016 - 16:44

Lea otras preguntas en las etiquetas