以下就是實現的**
package main
import "fmt"
type iproduct inte***ce
type iphone struct
func (p *iphone) showbrand
() type mac struct
func (pc *mac) showbrand
() type factory inte***ce
// 蘋果工廠
type ifactory struct
func (f *ifactory) createphone() iproduct
}func (f *ifactory) createpc() iproduct
}func main
() phone := factory.createphone()
phone.showbrand()
pc := factory.createpc()
pc.showbrand()
}複製**
以上就是抽象工廠模式,抽象乙個工廠類,建立各個產品的方法,通過具體的工廠類實現該介面 抽象工廠模式 Go語言設計模式 抽象工廠
想象一下你需要買包括運動鞋和運動服的運動套裝,大多數時候你想買同乙個工廠生產的一套運動套裝,比如nike套裝或adidas套裝。你想要的具體產品是成套的鞋子和短褲,這就是抽象工廠運用的場景,這些產品將由nike或adidas的抽象工廠建立。以下是工廠介面 以下是兩個產品介面 現在讓我們來看抽象工廠介...
Go設計模式 抽象工廠模式
對照下面模板類圖作個簡單說明抽象工廠的四個角色叭。抽象工廠角色 即圖中的abstract creator,抽象工廠核心,也就是那個 超級工廠 與應用程式無關,超級工廠所建立的工廠必須實現提供的介面 具體工廠角色 即圖中的creator,用於建立具體產品物件。抽象產品角色 即圖中的abstract p...
設計模式之工廠 抽象工廠
一 應用場景 工廠模式應用非常廣泛,意在抽象出一層專職管理物件產生以及物件間的關係,讓我們能夠專注於業務開發 1.不用去寫許許多多的new方法,替換實現類還得挨個修改。2.類中不涉及實現類,物件間只存在介面級別的耦合,客戶端呼叫注入實現類即可。由於工廠模式變種非常多,這裡只講一下常用的簡單工廠和抽象...