1. 如何實現前端模塊化開發
根據蝦米站長文章指出,現在前端的快速發展階段可分為前端美工,前端開發,前端架構。一個好的前端美工,至少要具備美術功底,ps技能,還能創意的設計理念。一個好有前端開發,你至少具備頁面切圖,腳本開發,頁面優化等相關知識。
2. 如何學習前端模塊化知識
學習前端模塊化知識主要集中精力學好以下知識點:
1、學好三駕馬車:HTML5 + CSS3 + JavaScrip
2、推薦學習過程:
1)CSS
(1)入門:
Codeademy上的html&css課程——在線互動式編程平台,弄清楚基本概念和基本語法
w3school上的HTML/CSS教程——技術手冊式的教程,比較全面,照著實例敲一遍
(2)進階:
《精通CSS·高級Web標准解決方案》——對CSS有一個比較深入的學習,對核心技術了解。
《HTML5權威指南》——非常全面的書,內容也很新,包含了HTML5+CSS3+JS DOM
(3)實戰:
bootstrap框架: bootstrap中文網/《bootstrap實戰》——流行的前端框架,注重實用即可
Codeademy上的Web Developer Skills+Projects——通過自己做小頁面/小網站來運用所學
(4)提高:
《CSS禪意花園》——提高自己的藝術設計能力,通過實例來學習如何用CSS設計出漂亮的頁面
2).Javascript:
(1)入門:
Codeademy上的javascript教程——實例比較多,比較淺,算是基本了解JS
w3school上的JS教程——比較詳細的了解下JS的特性
《JavaScript DOM編程藝術》——講js和DOM的基本知識和運用,了解JS和DOM可以做什麼
(2)進階:
《JavaScript高級程序設計》——JS聖經,比較全面,非常好的一本書,比犀牛書可閱讀性強
《JavaScript權威指南》——傳說中的犀牛書,好厚好厚的一本書,不適合入門,適合當工具書看
《JavaScript語言精粹》——很薄的一本書,但是可以幫助你快速了解JS的精華部分
(3)實戰:
jQuery框架: w3school上的jQuery教程/Codeademy上的jQuery教程——了解Jquery
《jQuery基礎教程》——流行的前端框架,注重實用
(4)提高:
《高性能JavaScript》——講如何提高js性能,以及構建和部署文件到生產環境的最佳實踐
《Secrets of the JavaScript Ninja》——jQuery作者寫的書,如果你覺得精通JS了再看這本書
3. 如何實現前端模塊化開發
頁面模塊化的目的是,實現多人協同開發頁面,提高頁面研發速度和降低維護難度。
4. 如何實現前端模塊化開發
1、ES6mole語法
2、使用require.js
3、使用webpack等打包工具
5. 對前端模塊化的理解有哪些
前端模塊化指的是:
1、將一個復雜的程序依據一定的規則(規范)封裝成幾個塊(文件),
並進行組合在一起
2、塊的內部數據與實現是私有的,
只是向外部暴露一些介面(方法)與外部其它模塊通信
說白了就是把常見的工具函數和一些UI組件封裝,可以再後續的開發過程中非常方便的進行調用,這就是前端模塊化
6. 前端如何提升開發效率
來具體聊一聊提高前端工程師開發效率的那些方法!
當然除了以上5點,對於前端來說需要提高開發效率的地方還有很多,可謂任重而道遠。希望以上幾點能夠給初識前端的同學帶來啟發並能夠親自實踐。
7. 如何實現前端模塊化開發
至於具體的調用方法,大概就是window定義一個變數,放入調用的這個功能的function初始化一個模塊,並返回這個模塊閉包中的一些方法用來操作或者獲取和設置一些模塊閉包內的變數。
8. 如何實現前端模塊化開發
根據蝦米站長文章指出,現在前端的快速發展階段可分為前端美工,前端開發,前端架構。一個好的前端美工,至少要具備美術功底,ps技能,還能創意的設計理念。一個好有前端開發,你至少具備頁面切圖,腳本開發,頁面優化等相關知識。
9. 如何理解前端模塊化
前端模塊化
在JavaScript發展初期就是為了實現簡單的頁面交互邏輯,寥寥數語即可;如今CPU、瀏覽器性能得到了極大的提升,很多頁面邏輯遷移到了客戶端(表單驗證等),隨著web2.0時代的到來,Ajax技術得到廣泛應用,jQuery等前端庫層出不窮,前端代碼日益膨脹
這時候JavaScript作為嵌入式的腳本語言的定位動搖了,JavaScript卻沒有為組織代碼提供任何明顯幫助,甚至沒有類的概念,更不用說模塊(mole)了,JavaScript極其簡單的代碼組織規范不足以駕馭如此龐大規模的代碼
模塊
既然JavaScript不能handle如此大規模的代碼,我們可以借鑒一下其它語言是怎麼處理大規模程序設計的,在Java中有一個重要帶概念——package,邏輯上相關的代碼組織到同一個包內,包內是一個相對獨立的王國,不用擔心命名沖突什麼的,那麼外部如果使用呢?直接import對應的package即可
import java.util.ArrayList;
遺憾的是JavaScript在設計時定位原因,沒有提供類似的功能,開發者需要模擬出類似的功能,來隔離、組織復雜的JavaScript代碼,我們稱為模塊化。
一個模塊就是實現特定功能的文件,有了模塊,我們就可以更方便地使用別人的代碼,想要什麼功能,就載入什麼模塊。模塊開發需要遵循一定的規范,各行其是就都亂套了
規范形成的過程是痛苦的,前端的先驅在刀耕火種、茹毛飲血的階段開始,發展到現在初具規模,簡單了解一下這段不凡的歷程
函數封裝
我們在講函數的時候提到,函數一個功能就是實現特定邏輯的一組語句打包,而且JavaScript的作用域就是基於函數的,所以把函數作為模塊化的第一步是很自然的事情,在一個文件裡面編寫幾個相關函數就是最開始的模塊了
function fn1(){
statement
}
function fn2(){
statement
}
這樣在需要的以後夾在函數所在文件,調用函數就可以了
這種做法的缺點很明顯:污染了全局變數,無法保證不與其他模塊發生變數名沖突,而且模塊成員之間沒什麼關系。
對象
為了解決上面問題,對象的寫法應運而生,可以把所有的模塊成員封裝在一個對象中
var myMole = {
var1: 1,
var2: 2,
fn1: function(){
},
fn2: function(){
}
}
這樣我們在希望調用模塊的時候引用對應文件,然後
myMole.fn2();
這樣避免了變數污染,只要保證模塊名唯一即可,同時同一模塊內的成員也有了關系
看似不錯的解決方案,但是也有缺陷,外部可以隨意修改內部成員
myModel.var1 = 100;
這樣就會產生意外的安全問題
立即執行函數
可以通過立即執行函數,來達到隱藏細節的目的
var myMole = (function(){
var var1 = 1;
var var2 = 2;
function fn1(){
}
function fn2(){
}
return {
fn1: fn1,
fn2: fn2
};
})();
這樣在模塊外部無法修改我們沒有暴露出來的變數、函數
上述做法就是我們模塊化的基礎,目前,通行的JavaScript模塊規范主要有兩種:CommonJS和AMD
CommonJS
我們先從CommonJS談起,因為在網頁端沒有模塊化編程只是頁面JavaScript邏輯復雜,但也可以工作下去,在伺服器端卻一定要有模塊,所以雖然JavaScript在web端發展這么多年,第一個流行的模塊化規范卻由伺服器端的JavaScript應用帶來,CommonJS規范是由NodeJS發揚光大,這標志著JavaScript模塊化編程正式登上舞台。
定義模塊
根據CommonJS規范,一個單獨的文件就是一個模塊。每一個模塊都是一個單獨的作用域,也就是說,在該模塊內部定義的變數,無法被其他模塊讀取,除非定義為global對象的屬性
模塊輸出:
模塊只有一個出口,mole.exports對象,我們需要把模塊希望輸出的內容放入該對象
載入模塊:
載入模塊使用require方法,該方法讀取一個文件並執行,返迴文件內部的mole.exports對象
10. 如何學習前端模塊化知識
首先我想告訴你的是,我做前端已經6年多了,回過頭看下,我做過div+css切圖(ps做前端最基本),swf,seo,套模板(後台程序),js(jquery,yui等)。做前端確實做得很雜,事又多,說不好聽的工資也比後台程序或者前端設計(也叫前端美工)來得低。但是有句話說你學的東西多了,對你都是有好的,像學得那麼多,你要是都懂得一二,時間久了,你就是全能的,往往可以向做經理發展,像程序員,幾年過後還是只懂後台而已。
最後,我想說的是做前端視野一定要開闊,要看前沿技術發展,比如好的腳本特效,創意等都能給用戶體驗加分。所以要多去學學相關知識和技術,多去看前端網站等,比如w3c,蝦米站長,css88, 懶人等,都會對做前端很有幫助。
希望在不久將來,你也能在前端界里做得更好,到時再看下我說的有沒有道理。