¿Cuál es la diferencia entre un repositorio y un servicio? No parezco comprenderlo.
Estoy hablando de acceso a datos a través de una capa de acceso a datos, normalmente con linq to sql.
Muy a menudo veo repositorios con métodos CRUD simples y servicios con métodos más específicos de la empresa.
Podemos tomar esta publicación de blog como ejemplo. Si miras las interfaces en la parte inferior (imágenes), tiene dos repositorios y dos servicios. ¿Cómo saber qué poner y dónde?
Como dije, los repositorios parecen ser más para operaciones similares a CRUD y Servicios más orientados a los negocios.
Gracias
design-patterns
alexn
fuente
fuente
Respuestas:
Un repositorio es esencialmente una fachada para la persistencia que utiliza la semántica del estilo de la colección (Agregar, Actualizar, Eliminar) para proporcionar acceso a datos / objetos. Es una forma de desacoplar la forma en que almacena datos / objetos del resto de la aplicación.
Un servicio proporciona coordinación u otros "servicios" necesarios para operar su aplicación. Son muy diferentes en que los Servicios no suelen saber cómo acceder a los datos de forma persistente, y los repositorios normalmente solo acceden a los datos / objetos de cualquier servicio que pueda tener.
fuente
repository
=collection
desdebackbone.js
orepository
=service
desdeangular
?El repositorio es donde se almacenan los datos. El servicio es lo que manipula los datos.
En una comparación de situaciones del mundo real, si su dinero se almacena en una bóveda en un banco, la bóveda es el depósito. El cajero que deposita, retira, etc es el servicio.
fuente
Yo diría como primer intento, en el sentido general (hasta que le des más contexto si tienes uno):
fuente