FACTORY PATTERN LÀ GÌ

     

Bài viết này mình sẽ giúp các bạn xem thêm về một design Pattern trong đội Creational pattern – Factory Method. Hãy cùng mình tìm hiểu để đọc thêm về factory pattern design là gì nhé.

Bạn đang xem: Factory pattern là gì


Factory Pattern là gì?

Factory Method kiến thiết Pattern, hay nói một cách khác là Factory Pattern là trong số những Pattern thông dụng trong lập trình phía đối tượng. Factory Pattern thuộc nhóm Creational thiết kế Pattern (mẫu khởi tạo). Vì trách nhiệm của chủng loại này là cai quản và trả về các đối tượng theo yêu cầu, cung ứng một trong số những cách tốt nhất có thể để tạo ra một đối tượng. Hỗ trợ cho việc khởi sinh sản đổi tượng một bí quyết linh hoạt hơn.

Factory pattern là trong số những mẫu kiến tạo được thực hiện nhiều tuyệt nhất trong Java. Trong Factory Pattern, chúng ta tạo đối tượng mà không nhằm lộ xúc tích tạo đối tượng ở phía người tiêu dùng và tham chiếu đến đối tượng mới được sinh sản ra bằng phương pháp sử dụng một interface chung.

Một định nghĩa bởi tiếng anh nguyên bạn dạng như sau:

“Factory Method is a creational kiến thiết pattern that Define an interface for creating an object, but let subclasses decide which class khổng lồ instantiate. Factory Method lets a class defer instantiation lớn subclasses.“

Factory kiến thiết Pattern hữu dụng ích gì?

Giúp bài toán khởi tạo các Objects mà bịt giấu đi xử lí súc tích của câu hỏi khởi tạo đó. Người tiêu dùng không biết ngắn gọn xúc tích thực sự được khởi tạo bên dưới phương thức factory.Mẫu kiến thiết này cho phép các lớp bé chọn kiểu đối tượng người sử dụng cần tạo.Nó địa chỉ sự link lỏng lẻo bằng cách loại vứt sự cần thiết phải ràng buộc những lớp ví dụ vào code. Nghĩa là code chỉ cửa hàng với interface hoặc lớp abstract, để nó sẽ thao tác làm việc với ngẫu nhiên lớp nào implements interface kia hoặc extends lớp abstract.Factory Pattern giúp bớt sự phụ thuộc giữa những module: cung cấp 1 phía tiếp cận với Interface nuốm vì những implement. Góp chuơng trình độc lập với các lớp cụ thể mà họ cần sinh sản 1 đối tượng, code sinh hoạt phía client sẽ không còn bị tác động khi chuyển đổi logic sinh sống factory xuất xắc sub class.Việc mở rộng code thuận lợi hơn: khi phải mở rộng, chỉ việc tạo ra những sub class và implement thêm vào factory method. Dễ dạng cai quản life cycle của những Object được tạo vị Factory Method Pattern.Thống tốt nhất về mặt naming convention: giúp cho các developer có thể hiểu về kết cấu source code.

Áp dụng vào đâu

“Factory method” hay được sử dụng trong việc xây đắp toolkit giỏi framework, đoạn mã của framework quan trọng phải tạo nên một đối tượng là hầu như lớp con tương xứng tăng tính mềm dẻo trong áp dụng framework đó.Cách sử dụng, bao giờ bạn nên áp dụng mẫu thiết kế Factory Method

Mẫu kiến thiết này sẽ phát huy được điểm mạnh của nó trong một vài trường đúng theo sau:

Khi bạn không biết nên khởi tạo thành đối tượng mới từ class nào.Khi bạn có nhu cầu tập trung các đoạn code tương quan đến việc khởi tạo thành các đối tượng người sử dụng mới về thuộc một địa điểm để thuận lợi cho những làm việc và xử lý.Khi các bạn không muốn người dùng phải biết không còn tên của các class có liên quan đến quy trình khởi tạo cũng giống như muốn che giấu, đóng gói toàn cục logic của quá trình khởi sản xuất một đối tượng người tiêu dùng mới nào kia khỏi phía tín đồ dùng.

Xem thêm: Hướng Dẫn Cách Cập Nhật Driver Card Màn Hình Nvidia Trên Máy Tính

Ưu điểm và nhược điểm của Factory Method Pattern

Ưu điểm

• Factory Method Pattern giúp hạn chế sự phụ thuộc giữa creator cùng concrete products. • Factory Method Pattern giúp gom các đoạn code tạo thành product vào trong 1 nơi trong chương trình, nhờ kia giúp dễ dàng theo dõi cùng thao tác. • cùng với Pattern này, bạn cũng có thể dễ dàng mở rộng, thêm số đông đoạn code new vào lịch trình mà không bắt buộc phá vỡ những đối tượng ban đầu .

Nhược điểm

Ngoài những ưu thế nên bên trên thì mẫu xây dựng này cũng đều có nhược điểm như sau: • Mã code rất có thể trở nên tinh vi hơn mức thông thường do yên cầu phải áp dụng nhiều class mới có thể setup được pattern này.

Nên áp dụng Factory Pattern khi nào?

Dựa vào những tiện ích của việc thực hiện Factory pattern nhưng ta sẽ cần sử dụng chúng với một trong những mục đích sau: • Khi sinh sản ra một cách mới trong việc khởi sản xuất Object => tất nhiên là vậy. • đậy giấu xử lý ngắn gọn xúc tích của vấn đề khởi tạo nên => trong trường hợp ai đang muốn viết 1 thư viện để cho tất cả những người khác sử dụng. • giảm sút sự dựa vào => thuận tiện cho việc mở rộng trong trường thích hợp bạn chưa biết chắc số lượng các đối tượng người sử dụng là đã đủ cho bài xích toán của bản thân chưa.

Mục đích sử dụng

Tại sao chúng ta lại phải dùng Factory pattern cố kỉnh cho câu hỏi khởi tạo đối tượng người dùng thông thường? sử dụng Factory pattern bổ ích ích gì? Factory pattern đưa ra 1 phát minh mới cho vấn đề khởi tạo những instance cân xứng với từng yêu cầu từ phía Client. áp dụng Factory pattern sẽ sở hữu được những ưu điểm sau:

Tạo ra một cách mới trong bài toán khởi tạo Object thông sang một interface chung.Khởi tạo các Objects mà đậy giấu đi xử lí ngắn gọn xúc tích của việc khởi tạo ra đấy.Giảm sự nhờ vào giữa những module, những logic với các class chũm thể. Mà chỉ phụ thuộc vào interface hoặc abstract class.

Ví dụ mẫu xây dựng Factory Method – vào c# winform

Chúng ta sẽ tạo nên một thi công theo mẫu Factory như hình mức giá dưới.

Xem thêm: Hướng Dẫn Cách Tháo Pin Samsung J7 Prime, Pro, Plus Từ A Msung Galaxy J7 Prime

*
sơ đồ gia dụng factory pattern

Bước 1: chế tác interface Shape.cs

*
interface trong factory

Bước 2: Tạo các Class ví dụ implement interface :

Rectangle.cs

*

Square.cs

*

Circle.cs

*
cách 3: tạo class Factory để khởi tạo những lớp ví dụ dựa vào tin tức đã cho

ShapeFactory.cs

*

Bước 4:

*
bước 5: Xuất kết quả

*
Kết luận

Trong nội dung bài viết này, chúng ta đã thuộc nhau khám phá về Factory Pattern là gì, ví dụ cố thể. Mong muốn pattern này để giúp đỡ ích cho các bạn trong tương lai. Mong các bạn để lại những chủ kiến để nội dung bài viết hoàn thiện hơn nữa.

Tài liệu tìm hiểu thêm :

https://www.tutorialspoint.com/design_pattern/factory_pattern.htm