最近被“模塊化”纏身,又是文章又是PPT的,被逼著想了很多相關(guān)的東西。整理下我這段時間對于“模塊化”的思考,大多都是我自己從事頁面重構(gòu)這份工作的經(jīng)驗和理解,在一定程度上存在局限性,也希望自己能溫故而知新。
“模塊化”只是我們對于過去一直使用的技術(shù)、方法的一個新潮的稱謂,就像“Ajax”。不過做為頁面重構(gòu)發(fā)展的一種趨勢,越來越被大家重視,不自覺也滿口的“模塊化”,只是你真的理解什么是“模塊化”嗎?
什么是模塊化?
對“模塊化”的解釋,在 CNKI 中就有28種。可見“模塊化”思維使用的廣泛。最接近頁面重構(gòu)中的“模塊化”,現(xiàn)有的解釋應(yīng)該就是軟件開發(fā)中的解釋了。
先看一下百度詞條是怎么解釋“ 模塊化 ”的:
“ 模塊化是指解決一個復(fù)雜問題時自頂向下逐層把軟件系統(tǒng)劃分成若干模塊的過程。每個模塊完成一個特定的子功能,所有的模塊按某種方法組裝起來,成為一個整體,完成整個系統(tǒng)所要求的功能。模塊具有以下幾種基本屬性:接口、功能、邏輯、狀態(tài),功能、狀態(tài)與接口反映模塊的外部特性,邏輯反映它的內(nèi)部特性。在軟件的體系結(jié)構(gòu)中,模塊是可組合、分解和更換的單元。”
相關(guān)的書籍也蠻多的,有興趣的同學(xué)可以搜一下。需要強調(diào)一點,我們所借鑒的是一種思維的方式。
頁面制作為什么需要模塊化?
站點內(nèi)容越來越多、代碼越來越臃腫,漸漸影響到了客戶端的體驗(主要是打開速度),影響到了維護的效率。有什么方法可以解決這些問題呢?
我們很容易就想到:減少代碼冗余、提高代碼重用率、圖片壓縮等等,而這些要如何實現(xiàn)呢?模塊化思維可以解決,即可以有效減少代碼冗余、提高代碼重用率,更重要是可以支持到多人維護,降低維護成本。CSS寫法較為靈活,容易產(chǎn)生代碼的耦合,使用模塊化也可以在一定程度上降低耦合度,對于BUG的定位也有幫助。所以,我們更應(yīng)該在站點前期就重視并使用“模塊化的思維”編寫站點。
我們之前經(jīng)常提到的站點性能優(yōu)化,有相當(dāng)一部分也是“模塊化”的內(nèi)容,比如提高代碼重用,提高開發(fā)效率等等,“模塊化”的優(yōu)點還有很多,我大概列了一下:
提高代碼重用率
提高開發(fā)效率、減少溝通成本
降低耦合
降低發(fā)布風(fēng)險
減少Bug定位時間和Fix成本
提高頁面容錯
更好的實現(xiàn)快速迭代
更好的支持灰度發(fā)布
其中最重要的一點,我認(rèn)為是“提高代碼重用率”,這也是模塊化最重要的特點之一。
如何實現(xiàn)“模塊化”?
新聞熱點
疑難解答