Nó cho phép bạn thay đổi biểu diễn bên trong của sản phẩm. Các đối tượng Builder cung cấp cho giám đốc với một giao diện trừu tượng để xây dựng các sản phẩm. Giao diện này cho phép các nhà xây dựng ẩn đại diện và cấu trúc bên trong của sản phẩm. Nó cũng giúp giấu đi như thế nào sản phẩm được lắp ráp. Vì sản phẩm được xây dựng thông qua một giao diện trừu tượng, tất cả các bạn phải làm gì để thay đổi đại diện nội bộ của sản phẩm là xác định một loại mới của người xây dựng.
Nó phân lập mã cho xây dựng và đại diện. Các mẫu Builder cải thiện mô đun bằng cách đóng gói theo cách mà một đối tượng phức tạp được xây dựng và biểu diễn. Khách hàng không cần phải biết bất cứ điều gì về các lớp học định nghĩa cấu trúc bên trong của sản phẩm; lớp học như vậy không xuất hiện trong giao diện Builder.
Mỗi ConcreteBuilder chứa tất cả các mã để tạo và lắp ráp một loại đặc biệt của sản phẩm. Mã này được viết một lần; sau đó Giám đốc khác nhau có thể tái sử dụng nó để xây dựng biến sản phẩm từ cùng một tập hợp của các bộ phận. Trong ví dụ RTF trước đó, chúng ta có thể xác định một người đọc cho một định dạng khác so với RTF, nói rằng, một SGMLReader, và sử dụng các TextConverters cùng để tạo ra ASCIIText, TeXText, và TextWidget màn thể hiện của các tài liệu SGML. Nó cung cấp cho bạn kiểm soát tốt hơn trong quá trình xây dựng . Không giống như các mẫu creational đó xây dựng các sản phẩm trong một shot, các mẫu Builder xây dựng các bước sản phẩm bước dưới sự kiểm soát của giám đốc. Chỉ khi sản phẩm được hoàn thành làm đạo diễn lấy nó từ những người xây dựng. Do đó các giao diện Builder phản ánh quá trình xây dựng các sản phẩm nhiều hơn so với các mẫu creational khác. Điều này cho phép bạn kiểm soát tốt hơn trong quá trình xây dựng và do cấu trúc bên trong của sản phẩm tạo ra.
đang được dịch, vui lòng đợi..
