Sự khác biệt giữa Mẫu lưu trữ và Mẫu mặt tiền là gì?


9

Tôi đã luôn sử dụng mẫu kho lưu trữ trong các ứng dụng của mình. Nhưng tôi đã thấy rằng nhiều người sử dụng mặt tiền thay vì kho lưu trữ để đặt tên cho quy ước, nhưng hoạt động là như nhau, tôi nghĩ. Tại sao có sự khác biệt này? Có sự khác biệt thực sự giữa họ hay không?

Câu trả lời:


11

Một mặt tiền là tổng quát hơn một kho lưu trữ.

Một mặt tiền có thể áp dụng cho bất cứ thứ gì không dựa trên sự bền bỉ, trong khi đó một kho lưu trữ được cho là đóng gói quyền truy cập vào một nguồn bên dưới và làm cho nó trông giống như một nguồn dữ liệu trong bộ nhớ.

Mặt tiền là để tạo ra một giao diện đơn giản cho một số giao diện phức tạp khác.


Vì vậy, kho lưu trữ được thiết kế để giao tiếp với lớp dữ liệu và mặt tiền là chung chung hơn thế này. ví dụ một mặt tiền có thể thực hiện các hoạt động khác nhưng cấu trúc được thiết kế giống như một kho lưu trữ, phải không?
Mirko

1
@MirkoPastorelli - nó có thể. Một ví dụ về mặt tiền sẽ là đưa ra một điểm nhập duy nhất cho mã thực sự phải xử lý một số hệ thống con.
Oded

4
@MirkoPastorelli: kho lưu trữ không được thiết kế để giao tiếp với lớp dữ liệu, nó được thiết kế để bọc giao tiếp với lớp dữ liệu và "trừu tượng hóa điều này" khỏi người dùng repo. (vì vậy, người ta có thể, ví dụ, cung cấp một kho lưu trữ giả cho mục đích thử nghiệm chỉ cung cấp dữ liệu thử nghiệm được mã hóa cứng và không có phụ thuộc nào khác). Từ quan điểm này, một repo thực sự không có gì ngoài một hình thức mặt tiền cụ thể.
Doc Brown
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.