建造者是指將乙個複雜的構建與其表示相分離,使得同樣的構建過程可以建立不同的表示。
比如我們以簡歷模板為例,有求職者、技能、職位、描述的等等一些功能。
// 建立乙個人類
varhuman
=function
(phone, skill)
human.prototype =
, getskill:
function()
}// 建立乙個姓名類
varname
=function
(name)
// 建立乙個職位類
varwork
=function
(work)
} work.prototype.
changedescript
=function
(str)
// 建立乙個應聘建造者
varperson
=function
(name, work)
var person =
newperson
('marco'
,'h5'
) console.
log(person.skill)
// 保密
console.
log(person.name.name)
// marco
console.
log(person.work.work)
// h5
console.
log(person.work.descript)
// 前端碼農
// 更改一下職位描述
person.work.
changedescript
('前端工程師'
) console.
log(person.work.descript)
// 前端工程師
從上面**可以發現建造者和工廠模式很相似,但是工廠模式建立出來的是乙個物件,追求的是建立的結果別無它求,所以那僅僅是乙個實實在在的建立過程,而建立者模式就有所不同,它不僅僅可得到建立的結果,然而也參與了建立的具體過程,對於具體實現的細節也參與了乾澀。 JavaScript設計模式之工廠模式
工廠模式是用來建立物件的一種最常用的設計模式。把建立物件的具體邏輯封裝在乙個函式中,那麼這個函式就可以被視為乙個工廠。工廠模式根據抽象程度的不同可以分為 簡單工廠,工廠方法和抽象工廠。簡單工廠模式又叫靜態工廠模式,由乙個工廠物件決定建立某一種產品物件類的例項。主要用來建立同一類物件的不同例項。fun...
JavaScript 設計模式之工廠模式
工廠模式的定義 工廠模式定義乙個用於建立物件的介面,這個介面由子類決定例項化哪乙個類。該模式使乙個類的例項化延遲到了子類。而子類可以重寫介面方法以便建立的時候指定自己的物件型別。工廠模式的使用場景 以下幾種情景下工廠模式特別有用 1 物件的構建十分複雜 2 需要依賴具體環境建立不同例項 3 處理大量...
JavaScript 設計模式之工廠模式
一 模式概念解讀 1.工廠模式概念文字解讀 工廠模式定義乙個用於建立物件的介面,這個介面由子類決定例項化哪乙個類。該模式使乙個類的例項化延遲到了子類。而子類可以重寫介面方法以便建立的時候指定自己的物件型別 抽象工廠 這個模式十分有用,尤其是建立物件的流程賦值的時候,比如依賴於很多設定檔案等。並且,會...