2009-07-29 21 views
23

En realidad, estoy bastante confundido acerca de estos términos y cómo se relacionan entre sí. Leí algo sobre cada uno de ellos, pero no confirmo el flujo de trabajo.DTO DAO POCO BO

DTO - Objeto de transferencia de datos - objeto para transportar valores
BO Objeto de negocios - objeto en el modelo de dominio. objeto para hacer lógica de negocios con
POCO - no tengo idea, he leído una definición en wiki pero no entendí nada
DAO - objeto de acceso a datos - ¿objeto para mapear la tabla DB?

¿Podría alguien traer algo de luz para mí?

+11

mejor. título. nunca. :) –

Respuesta

31
  • DTO: Objeto de transferencia de datos, que se utiliza para transferir datos entre los servicios loosly junto
  • POCO: Plain Old CLR Object, objeto CLR normal no utilizar cualquier atributo o herencia requerido para actuar como DAO/DTO
  • BO: Business Object, contiene la lógica de negocio, que se utiliza en la parte lógica de negocios de su solución
  • DAO: Acceso a datos de objetos de nosotros, ed para transferir datos desde su base de datos

Así que un flujo de trabajo normal sería solicitar datos de un servicio, que se envía a su aplicación como DTO, lo convierte en un BO para manipularlo y enviarlo de nuevo como un DTO o después de convertirlo a un DAO almacenarlo en una base de datos.

Utiliza el objeto diferente para separar las preocupaciones entre los 3 tipos, un BO no necesita saber si se mantiene utilizando una base de datos o un servicio.

+3

Bien dicho. Breve, pero efectivo. –

+0

Lo único que echo de menos, ¿qué hacer si la lógica BO necesita cargar datos? ¿Cómo puede acceder al DAO? – pihentagy

+0

@pihentagy eso es lo que dal. – nawfal

3

Cronología de andamiaje basado:

  • lotes => Procedimiento almacenado => "viejo objeto CLR simple" => npmagenda

  • zócalo => ODBC => "el acceso a objetos de datos" => NoSQL

  • CSV => XML => "objeto de transferencia de datos" => JSON

  • FTP => CGI => "objeto de negocio" => AJAX

Referencias