JavaScript 簡介

2018-08-02 16:22 更新

簡介

寫出可維護(hù)的代碼的一個(gè)最重要的方面就是在代碼中能夠注意到重復(fù)出現(xiàn)的主題并對(duì)其進(jìn)行優(yōu)化。設(shè)計(jì)模式的知識(shí)領(lǐng)域是無價(jià)的。

在本書的第一部分,我們將探索那些真正可以應(yīng)用于任何編程語言的設(shè)計(jì)模式的歷史和重要性。如果你已經(jīng)熟悉這段歷史,可以直接跳過"什么是模式?"這一章繼續(xù)閱讀。

設(shè)計(jì)模式可以追溯到早期的一名叫Christopher Alexander的建筑師。他經(jīng)常會(huì)發(fā)表一些他在處理設(shè)計(jì)問題時(shí)的經(jīng)驗(yàn)和如何與建筑和城鎮(zhèn)相聯(lián)系的。有一天,當(dāng)Alexander使用了一次又一次后,他發(fā)現(xiàn)某些設(shè)計(jì)結(jié)構(gòu)會(huì)導(dǎo)致做出的效果是最好的。

在Sara Ishikawa和Murray Silverstein的協(xié)作下,Alexander發(fā)明了一種可以幫助授權(quán)任何人去設(shè)計(jì)和構(gòu)建希望的任何規(guī)模的模式語言。這在1977年的一篇名為"A Pattern Language"的論文中發(fā)表,在后來作為一本完整的精裝書發(fā)表。

大約30年前,軟件工程師開始將Alexander曾寫過的原理并入第一版的設(shè)計(jì)模式,這是一個(gè)用來對(duì)那些想要改善他們編碼技巧的新手開發(fā)者的一個(gè)指南。要注意,這時(shí)設(shè)計(jì)模式背后的概念實(shí)際上已經(jīng)在編程行業(yè)成立以來就有了,雖然不是那么正式的形式。

第一個(gè)也是最標(biāo)志性的關(guān)于軟件工程的設(shè)計(jì)模式的正式作品是在1995年一本叫Design Patterns: Elements Of Reusable Object-Oriented Software的書中發(fā)表,這是Erich Gamma, Richard Helm, Ralph Johnson John Vlissides - 一群被稱為Gang of Four(簡稱GoF)的人寫的。

GoF的出版物被認(rèn)為是非常有助于推動(dòng)設(shè)計(jì)模式的概念在我們的領(lǐng)域發(fā)展的,因?yàn)樗枋隽舜罅康拈_發(fā)技術(shù)和缺陷,而且還有在今天的世界中大量使用的23個(gè)核心的面向?qū)ο蟮脑O(shè)計(jì)模式。我們將詳細(xì)地在"設(shè)計(jì)模式分類"這一章中介紹這些模式。

在本書中,我們將看到一些流行的JavaScript設(shè)計(jì)模式,并探索為什么一些特定的模式比其他的更適合你的項(xiàng)目。但請(qǐng)記住模式不僅僅可以應(yīng)用在單純的JavaScript (例如:標(biāo)準(zhǔn)JavaScript代碼)里,也可以在一些像jQuerydojo的抽象庫里使用。在我們開始之前,讓我們看看模式在軟件設(shè)計(jì)中的確切定義。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)