2009-07-29 13 views
23

Właściwie jestem bardzo zdezorientowany tym terminem i tym, jak odnoszą się do siebie nawzajem. Przeczytałem coś o każdym z nich, ale nie przepuszczam przepływu pracy.DTO DAO POCO BO

DTO - obiekt do przesyłania danych - obiekt do wartości transportowych
BO Obiekt biznesowy - obiekt w modelu domeny. obiekt do zrobienia logiki biznesowej z
POCO - nie mam pojęcia, czytałem definicję na wiki ale nic nie rozumiałem
DAO - obiekt dostępu do danych - obiekt do odwzorowania tabeli DB?

Czy ktoś mógłby przynieść mi trochę światła?

+11

najlepiej. tytuł. zawsze. :) –

Odpowiedz

31
  • DTO: Data Object Transfer, używany do przesyłania danych między loosly sprzężonych usług
  • POCO: Plain Old CLR Object, normalny przedmiot CLR nie używa żadnych atrybutów lub wymagane dziedziczenie działać jako DAO/DTO
  • BO: Przedmiot działalności zawiera logikę biznesową, wykorzystywane w ramach działalności logikę rozwiązania
  • DAO: Data Access Object nas ed do transferu danych z bazy danych

Więc regularny przepływ pracy byłoby zażądać danych z usługi, które są wysyłane do aplikacji jako DTO, należy go przekonwertować na BO manipulować go i odesłać go jako DTO lub po przekonwertowaniu go do magazynu DAO w bazie danych.

Używasz różnych obiektów do rozdzielania spraw między 3 typy, BO nie musi wiedzieć, czy jest zachowywany za pomocą bazy danych lub usługi.

+3

Dobrze powiedziane. Krótkie, ale skuteczne. –

+0

Jedyna rzecz, za którą tęsknię, to co zrobić, jeśli logika BO musi załadować dane? W jaki sposób może uzyskać dostęp do DAO? – pihentagy

+0

@pihentagy to właśnie robi dal. – nawfal

3

Czasu rusztowania opiera:

  • partii => procedury przechowywanej => "zwykły stary clr obiekt" => npmagenda

  • Gniazdo => ODBC => "dostępu do obiektów danych" => NoSQL

  • CSV => XML => "obiekt transfer danych" => JSON

  • FTP => CGI => "obiektu biznesowego" => AJAX

Odniesienia