
定義 允許一個(gè)對(duì)象在其內(nèi)部狀態(tài)改變時(shí)腿时,改變它的行為。 一個(gè)對(duì)象當(dāng)他的內(nèi)部狀態(tài)改變時(shí)饭宾,也需要改變他的行為批糟,當(dāng)然只做狀態(tài)的互相轉(zhuǎn)換也可以。 當(dāng)控制一...
定義 封裝作用于某數(shù)據(jù)結(jié)構(gòu)(如List,Set,Map等)中的各個(gè)操作看铆。 可以在不改變各元素的類的前提下徽鼎,定義作用于這些元素的操作。 適用場(chǎng)景 ...
定義 包含了一些命令對(duì)象和一系列的處理對(duì)象弹惦。每一個(gè)處理對(duì)象決定它能處理哪些命令對(duì)象否淤,它也知道如何將它不能處理的命令對(duì)象傳遞給該鏈中的下一個(gè)處理對(duì)...
定義 定義了 一個(gè)封裝一組對(duì)象 交互的 對(duì)象 。 通過使對(duì)象明確的相互引用來促進(jìn)松散耦合棠隐,并允許獨(dú)立的改變他們的交互石抡。 適用場(chǎng)景 系統(tǒng)中的對(duì)象之...
定義 將不同的請(qǐng)求封裝成不同的對(duì)象。 適用場(chǎng)景 解決了應(yīng)用程序中對(duì)象的職責(zé)以及他們之間的通信方式助泽。發(fā)送者和接收者完全解耦 需要抽象出等待執(zhí)行的行...
定義 保存一個(gè)對(duì)象的某個(gè)狀態(tài)啰扛,以便在適當(dāng)?shù)臅r(shí)候恢復(fù)該對(duì)象的狀態(tài)(游戲存檔,瀏覽器返回) 適用場(chǎng)景 保存及恢復(fù)數(shù)據(jù)相關(guān)業(yè)務(wù)場(chǎng)景 優(yōu)點(diǎn) 為用戶提供一...
定義 定義了對(duì)象之間的一對(duì)多依賴嗡贺,讓多個(gè)觀察者對(duì)象同時(shí)監(jiān)聽某個(gè)主題對(duì)象隐解,當(dāng)主題對(duì)象發(fā)生變化時(shí),它的所有依賴者(觀察者)都會(huì)受到通知并更新诫睬。 比如...
定義 給定一個(gè)語言煞茫,定義它的文法的一種表示,并定義一個(gè)解釋器摄凡,這個(gè)解釋器使用該表示來解釋語言中的內(nèi)容续徽。 為解釋一種算法或者一種語言創(chuàng)建的解釋器。...
定義 定義了一組算法家族亲澡,分別封裝起來钦扭,讓他們之間可以互相替換,此模式讓算法的變化不會(huì)影響到使用算法的用戶谷扣。 通俗來講就是一組應(yīng)用邏輯土全,在用戶使...