JSOO Day 04 設定模式

2021-10-06 17:18:14 字數 1297 閱讀 5929

設計模式就是可重用的用於解決軟體設計中一般問題的方案。

其中乙個原因是它可以讓我們站在巨人的肩膀上,獲得前人所有的經驗

保證我們以優雅的方式阻止我們的**,滿足我們解決問題

怎麼才能更稱之為設計模式?

1,模式名稱

2,該模式所能解決的問題

3,解決方案

4,使用該模式的效果(優點和缺點)

具體了解還可以看看《大話設計模式》

為什麼要學習設計模式

1,模式是行之有效的解決方法:他們提供固定的解決方法來解決在軟體開發**現

的問題,這些都是久經考驗的反映了開發者的經驗和見解的使用模式來自定義的技術

2,模式可以很容易地重用,乙個模式通常反映了乙個可以適應自己需要的開箱即用的解決方案,這個特性讓它很健壯

3,模式很善於表達:當我們看到乙個提供某種解決方案的模式時,一般有一組結構和詞彙

可以非常優雅地幫助表達相當大的解決方案

設計模式分類:

1,建立模式:涉及物件的建立

單例模式

工廠模式

建造者模式

原型模式

2,結構模式:涉及類和物件的組合

外觀模式

**模式

介面卡模式

裝飾模式

3,行為模式:刻畫了類和物件交換及分配職責的方式,只要目標解耦

觀察者模式

命令模式

模板模式

裝飾者模式(保持原來不變的情況下,新增新的事件處理程式)

var btn1=document.getelementbyid(『btn1』)

var btn2=document.getelementbyid(『btn2』)

btn1.οnclick=function ()

btn2.οnclick=function ()

}}function newclick()

橋接模式

var btn = document.getelementbyid(『btn』);

btn.οnmοuseοver=function ()

btn.οnmοuseοut=function ()

function changstyle(dom,color,bg)

狀態模式

function action(type) else if(type == 『cry』)else if(type==『smile』)/

/狀態模式方法/

if(type in obj)

}var obj = ,

cry() ,

smile() }

介面卡模式

工廠模式04

一 完成者資訊 姓名 韋慶 學號 07770104 二 模式資訊 模式名稱 工廠模式 模式概述 當系統準備為使用者提供某個類的子類的例項,又不想讓使用者 和該子類形成耦合時,就可以使用工廠方法模式來設計系統。工廠方法模式的關鍵是在乙個介面或抽象類中定義乙個抽象方法,該方法返回某個類的子類例項,該抽象...

04 原型模式

原型模式,產生乙份簡歷,其他簡歷從該簡歷進行clone,所以當這份簡歷改變後,之後clone的簡歷都會有所改變,這份簡歷就是原型。注意 原型模式涉及淺拷貝和深拷貝。示例如下 file resume.h brief prototype pattern author timeshark version ...

04 單例模式

題目 寫乙個single模式 飽漢式 類載入時就會建立類例項 public class offer04 private final static offer04 instance newoffer04 public static offer04 getinstance 懶漢式 在使用時建立類例項,容...