原文連接:https://blog.csdn.net/a_one2010/article/details/54563733css
相信廣大前端朋友們都遇到過這麼一個問題? 什麼是模塊化,模塊化開發如何實現?html
那麼什麼是模塊化呢,時下流行的庫與框架又有哪些在利用模塊化進行開發呢?前端
今天我從如下兩個方向來進行描述,若是描述不夠準確,還請各位多多指正。node
1.什麼是模塊化? webpack
模塊化就是講js文件按照功能分離,根據需求引入不一樣的文件中。源於服務器端。es6
在前段開發中,最早出如今node.js中,commne.js中(module.exports和require)隨着web應用的模塊化,在瀏覽器端頁是須要進行模塊化開發,早期AMD,CMD規範,表明Require.js和sea.js。在es6中,提出了原生模塊呼哈的解決方案,就是export和import可是瀏覽器並無徹底支持,須要藉助一些工具,--babel,實現這個轉換的有browserify和webpack。web
在node.js中,模塊就是一個文件,一般js、json文件,包是多個模塊的集合,相似文件夾。json
模塊化通俗點的理解就是這樣:就像咱們小時候拼積木同樣。咱們想拼一個房子出來,咱們不是一會兒從低到頂逐漸的拼出來。而是咱們把一個橫條,豎條,圓圈等拼湊在一塊兒,造成一個窗戶,一面牆,房頂等等部件。這些部件就如同是一個個模塊同樣。具有必定的功能,能夠單獨分開使用。不一樣的框架和庫的模塊,有不少功能相似,能夠理解爲你的積木是塑料的,他的是木頭的,只要接口Api能夠對的上,那麼也能夠通用。瀏覽器
2.Node.js中的模塊:Angular.js中的模塊:React.js中的模塊:有何異同?服務器
nodejs裏的模塊,就是一個文件,一般js、json文件。
Angularjs裏的模塊就是一系列配置和代碼塊的集合,它們是在啓動階段就附加到應用上的。一個最簡單的模塊由兩類代碼塊集合組成的:
配置代碼塊 - 在注入提供者注入和配置階段執行。只有注入提供者和常量能夠被注入到配置塊中。這是爲了防止服務在被配置好以前就被提早初始化。
運行代碼塊 - 在注入器被建立後執行,被用來啓動應用的。只有實例和常量能被注入到運行塊中。這是爲了防止在運行後還出現對系統的配置。
Reactjs裏的模塊/組件:就是將一段js、html、css組合在一塊兒,造成有必定功能的代碼片斷