Tổng quan về Factory Method Design Pattern


Factory Method cung cấp một interface, phương thức trong việc tạo nên một đối tượng (object) trong class, giao việc khởi tao một đối tượng (object) cụ thế cho lớp con (subclass)


I. Giới thiệu

Factory Method (hay còn gọi là virtual constructor) là một mẫu thiết kế thuộc nhóm Creational Patterns – những mẫu thiết kế cho việc khởi tạo đối tượng của lớp.

Nhiệm vụ của Factory Method được xem như một factory (nhà máy), quản lý và sản xuất ra (create) các đối tượng theo yêu cầu dựa vào tham số đầu vào, giúp cho việc khởi tạo đổi tượng một cách linh hoạt hơn.

Trong Factory Method, chúng ta tạo đối tượng mà không để lộ logic tạo đối tượng ở phía người dùng và tham chiếu đến đối tượng mới được tạo ra bằng cách sử dụng một interface và phương thức khởi tạo đối tượng chung.

Factory Method được sử dụng khi có một class cha (superclass) với nhiều class con (subclass), dựa trên đầu vào và phải trả về 1 trong những class con đó.

 

Một số lợi ích cơ bản của việc sử dụng Factory Method

  • Tạo ra một cách khởi tạo object mới thông qua một interface chung
  • Che giấu quá trình xử lý logic của phương thức khởi tạo
  • Giảm sự phụ thuộc, dễ dàng mở rộng
  • Giảm khả năng gây lỗi compiler