Trong mẫu Mặt tiền cổ điển, một đối tượng đơn giản thường cung cấp giao diện đơn giản cho một thứ phức tạp hơn.Mẫu mặt tiền so với SRP
Như Gang-of-Bốn đặt nó (càng gần "chính thức" như nó được ...):
mặt tiền (185) Cung cấp một giao diện thống nhất để một bộ giao diện trong một hệ thống phụ . Mặt tiền định nghĩa một giao diện cấp cao hơn làm cho hệ thống phụ dễ sử dụng hơn.
và
... một mặt tiền chỉ đơn thuần là tóm tắt các giao diện để hệ thống con vật để làm cho họ dễ dàng hơn để sử dụng; nó không định nghĩa bất kỳ chức năng mới nào, và các lớp hệ thống con không biết về nó.
Hoặc, như Unmesh đặt nó trong https://stackoverflow.com/a/5242476:
Một Facade che chắn cho người sử dụng từ các chi tiết phức tạp của hệ thống và cung cấp cho họ một cái nhìn đơn giản của nó mà là dễ sử dụng. Nó cũng decouples mã sử dụng hệ thống từ các chi tiết của các hệ thống con, làm cho nó dễ dàng hơn để sửa đổi hệ thống sau này.
Các đơn Trách nhiệm Nguyên tắc khuyên chúng ta rằng
một lớp hoặc mô-đun nên có một, và chỉ có một, lý do gì để thay đổi.
mỗi Bác Bob (http://en.m.wikipedia.org/wiki/Single_responsibility_principle)
Cho rằng một mặt tiền, do thiết kế, khiên người dùng từ vô số các "lý do để thay đổi", làm thế nào hai ý tưởng này có thể làm việc cùng nhau? Mặt tiền không có nhiều lý do để thay đổi khi số lượng hệ thống phụ mà triển khai của nó phụ thuộc không?
gì sẽ vô số các lý do thay đổi mặt tiền? – PeeHaa
sẽ làm rõ trong bài đăng – goofballLogic