Trong một dự án nhiều tầng nên giao diện nên được xác định ở đâu?


9

Tôi có một dự án nhiều tầng được tạo thành từ ba dự án phụ, đó là dự án truy cập dữ liệu, dự án Logic kinh doanh và dự án trình bày, giao diện nên được xác định ở đâu? Tôi đoán rằng nên có các giao diện được xác định trong cả DAL và BLL .. Trong bối cảnh thử nghiệm Lớp logic nghiệp vụ bằng cách sử dụng dữ liệu "thử nghiệm" dựa trên giao diện, có vẻ như có thể có một dự án riêng biệt chỉ với giao diện?

Bất kỳ thực hành tốt nhất hoặc ý tưởng về cách này nên được sắp xếp?

Câu trả lời:


9

Một cách tiếp cận tốt cho việc này là sử dụng mô hình cầu thang:

nhập mô tả hình ảnh ở đây

Vì vậy, DAL sống trong một dự án, các giao diện của nó trong một dự án khác, BLL trong một phần ba, các giao diện của nó trong một phần tư và cứ thế.

Ý tưởng là khi kiểm tra ví dụ lớp kinh doanh, sau đó bạn chỉ cần tham khảo dự án giao diện DAL, thay vì kéo tất cả DAL thực và ví dụ NHibernate vào phạm vi chỉ để truy cập vào các giao diện đó.

Theo như tôi biết, mô hình này là sự sáng tạo của Gary McLean Hall trong cuốn sách " Mã thích ứng thông qua C #: Mã hóa nhanh với các mẫu thiết kế và nguyên tắc RẮN "

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.