HTML5之JavaScript設計模式
設計模式是在軟件開發中,經過驗證的,用於解決在特定環境下,重複出現的特定的問題的解決方案。在編寫JS代碼的過程中,運用一定的設計模式可以讓我們的代碼更加優雅、靈活。
每個設計模式的構成如下:
1、模式名稱:模式的一個好記的名字
2、環境和問題:描述在什麼環境下,出現什麼特定的問題
3、解決方案:描述如何解決問題
4、效果:描述應用模式後的效果,以及可能帶來的問題
簡單地說,模式就是一些經驗,一套場景/問題+解決方案。
扣丁H5百人教學天團,每個講師都是具有多年開發經驗的行業佼佼者。設計模式課程的講解將從實際應用場景出發,以實踐和嘗試的方式,分析可能出現的問題以及如何解決,以期達到“避免犯前人犯過的錯誤 + 避免引入不成熟的設計“這一目標。讓大家快速領略編程之美,模式之美。
為什麼要學習設計模式?
設計模式的種類較多,各個模式都有它對應的場景,不能武斷地認為某個模式就是最優解決方案。通過學習這些設計模式,讓你找到“封裝變化”、“鬆耦合”、“針對接口編程”的感覺,從而設計出易維護、易複用、擴展性好、靈活性足的程序。
通過學習設計模式讓你領悟面向對象編程的思想(SOLID),到最後就可以拋棄設計模式,把這些思想應用在你的代碼中,寫出高內聚、低耦合、可擴展、易維護的代碼了。此時已然是心中無設計模式,而處處是設計模式了。這就是學習設計模式的目的。
常見的幾種設計模式
單例模式
之所以叫做單例模式是因為它限定對於一個類,它他只允許有一個實例化對象,經典的實現方式是,創建一個類,這個類包含一個方法,這個方法在沒有對象存在的情況下,將會創建一個新的實例對象。如果對象存在,這個方法只是返回這個對象的引用。
適配器模式
將一個類(對象)的接口(方法或屬性)轉化成客戶希望的另外一個接口,適配器模式使得原本由於接口不兼容而不能一起工作的那些類(對象)可以一起工作。
觀察者模式
一個或者更多的觀察者對一個被觀察者的狀態感興趣,將自身的這種興趣通過附著自身的方式註冊在被觀察者身上。當被觀察者發生變化,而這種便可也是觀察者所關心的,就會產生一個通知,這個通知將會被送出去,最後將會調用每個觀察者的更新方法。
當觀察者不在對被觀察者的狀態感興趣的時候,它們只需要簡單的將自身剝離即可。
【文章轉載於:扣丁學堂微信公眾號】