Home
Posts
Categories
Series
Tags
About
設計模式-工廠模式
postedOn: 2026-4-12   updatedOn: 2026-4-12   includedIn: 程式
wordsCount: 297   readingTime: 1 min   viewers:

Factory -工廠模式

分類

建立模式-Creational Patterns

主要角色

Product (產品介面)、Concrete Product (具體產品)、Factory (工廠介面)、Concrete Factory (具體工廠)

目的

將物件的「實例化」延遲到子類,讓使用者不需要知道具體物件是如何被建立的。

如何互動

使用者透過 Factory 介面要求產品,由 Concrete Factory 負責根據邏輯 new 出對應的 Concrete Product 並回傳,實現解耦。

GitHub練習

https://github.com/hanksky12/DesignPatterns/blob/main/internal/factory/factory.go

實務上

解決server後端回傳前端時,因為單一遊戲下子分類過多,回傳的json結構不統一,若偷懶統一欄位格式處理,大多時候payload都會記錄無效資訊, 所以如何根據子分類,客製化用不同的初始化方式拿到物件,做後續使用,這時用工廠模式做封裝就隱藏其複雜性