前端Js框架匯總
概述:
智能未來绰更,一個長期更新技術(shù)文章的小編瞧挤,因為近期較忙,更新時間不定時儡湾,還望各位見諒特恬,小編會努力創(chuàng)作,希望大家能夠喜歡徐钠。
Web癌刽、無線、物聯(lián)網(wǎng)尝丐、VR显拜、PC從不同方向推進著技術(shù)的融合與微創(chuàng)新。程序員在不同業(yè)務(wù)場景下的角色互換爹袁。而隨著node.js的出現(xiàn)語言的角色也在發(fā)生著轉(zhuǎn)變远荠,Js扮演了越來越重要的角色。也就有了茶余飯后也把了解到的知識整理一下失息∑┐荆看過“你的知識需要管理”后,強烈的意識到雜亂且范范的知識儲備遠不如整理后條理清晰的知識帶來好處多盹兢。所以邻梆,是的,我們需要時不時的回來對掌握的知識梳理歸類绎秒,以備不時之需确虱。
一、前端框架庫:
1.Zepto.js
地址:http://www.css88.com/doc/zeptojs/
描述:Zepto是一個輕量級的針對現(xiàn)代高級瀏覽器的JavaScript庫,?它與jquery有著類似的api校辩。 如果你會用jquery窘问,那么你也會用zepto。關(guān)于Zepto認(rèn)知我也是通過與一位騰訊朋友聊天的時候知道的宜咒,只作了些基礎(chǔ)的了解惠赫。
2.SUI Mobile
地址:http://m.sui.taobao.org
描述:SUI Mobile 是一套基于?Framework7?開發(fā)的UI庫。它非常輕量故黑、精美儿咱,只需要引入我們的CDN文件就可以使用,并且能兼容到 iOS 6.0+ 和 Android 4.0+场晶,非常適合開發(fā)跨平臺Web App混埠。
用途:你也看到了,他是用于無線端的Web App的開發(fā)诗轻。
3.Node.Js
地址:http://www.runoob.com/nodejs/nodejs-tutorial.html (中文網(wǎng))
描述:Node.js是一個Javascript運行環(huán)境(runtime)钳宪。實際上它是對Google V8引擎進行了封裝。V8引 擎執(zhí)行Javascript的速度非嘲饩妫快吏颖,性能非常好。Node.js對一些特殊用例進行了優(yōu)化恨樟,提供了替代的API半醉,使得V8在非瀏覽器環(huán)境下運行得更好。
Node.js是一個基于Chrome JavaScript運行時建立的平臺劝术, 用于方便地搭建響應(yīng)速度快缩多、易于擴展的網(wǎng)絡(luò)應(yīng)用。Node.js 使用事件驅(qū)動养晋, 非阻塞I/O?模型而得以輕量和高效瞧壮,非常適合在分布式設(shè)備上運行數(shù)據(jù)密集型的實時應(yīng)用。
簡單的說 Node.js 就是運行在服務(wù)端的 JavaScript匙握。
Node.js 是一個基于Chrome JavaScript 運行時建立的一個平臺咆槽。
Node.js是一個事件驅(qū)動I/O服務(wù)端JavaScript環(huán)境,基于Google的V8引擎圈纺,V8引擎執(zhí)行Javascript的速度非城胤蓿快,性能非常好蛾娶。
用途:
1. RESTful API
這是NodeJS最理想的應(yīng)用場景灯谣,可以處理數(shù)萬條連接,本身沒有太多的邏輯蛔琅,只需要請求API胎许,組織數(shù)據(jù)進行返回即可。它本質(zhì)上只是從某個數(shù)據(jù)庫中查找一些值并將它們組成一個響應(yīng)。由于響應(yīng)是少量文本辜窑,入站請求也是少量的文本钩述,因此流量不高,一臺機器甚至也可以處理最繁忙的公司的API需求穆碎。
2. 統(tǒng)一Web應(yīng)用的UI層
目前MVC的架構(gòu)牙勘,在某種意義上來說,Web開發(fā)有兩個UI層所禀,一個是在瀏覽器里面我們最終看到的方面,另一個在server端,負(fù)責(zé)生成和拼接頁面色徘。
不討論這種架構(gòu)是好是壞恭金,但是有另外一種實踐,面向服務(wù)的架構(gòu)褂策,更好的做前后端的依賴分離横腿。如果所有的關(guān)鍵業(yè)務(wù)邏輯都封裝成REST調(diào)用,就意味著在上層只需要考慮如何用這些REST接口構(gòu)建具體的應(yīng)用辙培。那些后端程序員們根本不操心具體數(shù)據(jù)是如何從一個頁面?zhèn)鬟f到另一個頁面的,他們也不用管用戶數(shù)據(jù)更新是通過Ajax異步獲取的還是通過刷新頁面邢锯。
3. 大量Ajax請求的應(yīng)用
例如個性化應(yīng)用扬蕊,每個用戶看到的頁面都不一樣,緩存失效丹擎,需要在頁面加載的時候發(fā)起Ajax請求尾抑,NodeJS能響應(yīng)大量的并發(fā)請求〉倥啵 總而言之再愈,NodeJS適合運用在高并發(fā)、I/O密集护戳、少量業(yè)務(wù)邏輯的場景翎冲。
4.angular.Js
地址:http://www.runoob.com/angularjs/angularjs-tutorial.html (中文網(wǎng))
描述:AngularJS? 誕生于2009年,由Misko Hevery 等人創(chuàng)建媳荒,后為Google所收購抗悍。是一款優(yōu)秀的前端JS框架,已經(jīng)被用于Google的多款產(chǎn)品當(dāng)中钳枕。AngularJS有著諸多特性缴渊,最為核心的是:MVVM、模塊化鱼炒、自動化雙向數(shù)據(jù)綁定衔沼、語義化標(biāo)簽、依賴注入等等。
用途:通過描述我們應(yīng)該就能很好的明白AngularJS的真實用途了指蚁,MVVM菩佑,模塊化,自動化雙向數(shù)據(jù)綁定等等欣舵。除了簡單的dom操作外擎鸠,更能體現(xiàn)Js編程的強大。當(dāng)然應(yīng)用應(yīng)該視場合而定缘圈。
5.JQuery Mobile
地址:http://www.w3school.com.cn/jquerymobile/ ? ?(中文網(wǎng))
描述:Query Mobile是jQuery?在手機上和平板設(shè)備上的版本劣光。jQuery Mobile 不僅會給主流移動平臺帶來jQuery核心庫,而且會發(fā)布一個完整統(tǒng)一的jQuery移動UI框架糟把。支持全球主流的移動平臺绢涡。jQuery Mobile開發(fā)團隊說:能開發(fā)這個項目,我們非常興奮遣疯。移動Web太需要一個跨瀏覽器的框架雄可,讓開發(fā)人員開發(fā)出真正的移動Web網(wǎng)站。
用途:jQuery Mobile 是創(chuàng)建移動 web 應(yīng)用程序的框架缠犀。
jQuery Mobile 適用于所有流行的智能手機和平板電腦数苫。
jQuery Mobile 使用 HTML5 和 CSS3 通過盡可能少的腳本對頁面進行布局。
6.requirejs
地址:http://www.requirejs.cn/
描述:RequireJS的目標(biāo)是鼓勵代碼的模塊化辨液,它使用了不同于傳統(tǒng)標(biāo)簽的腳本加載步驟虐急。可以用它來加速滔迈、優(yōu)化代碼止吁,但其主要目的還是為了代碼的模塊化。它鼓勵在使用腳本時以module ID替代URL地址燎悍。
RequireJS以一個相對于baseUrl的地址來加載所有的代碼敬惦。 頁面頂層標(biāo)簽含有一個特殊的屬性data-main,require.js使用它來啟動腳本加載過程谈山,而baseUrl一般設(shè)置到與該屬性相一致的目錄俄删。
用途:模塊化動態(tài)加載。
7.Vue.js
地址:http://cn.vuejs.org/
描述:Vue.js 是用于構(gòu)建交互式的 Web ?界面的庫奏路。它提供了?MVVM?數(shù)據(jù)綁定和一個可組合的組件系統(tǒng)抗蠢,具有簡單、靈活的 API思劳。從技術(shù)上講迅矛, Vue.js 集中在?MVVM?模式上的視圖模型層,并通過雙向數(shù)據(jù)綁定連接視圖和模型潜叛。實際的 DOM 操作和輸出格式被抽象出來成指令和過濾器秽褒。相比其它的 MVVM 框架壶硅,Vue.js 更容易上手。
8.backbone.js
地址:http://www.css88.com/doc/backbone/
描述:Backbone?為復(fù)雜Javascript應(yīng)用程序提供模型(models)销斟、集合(collections)庐椒、視圖(views)的結(jié)構(gòu)。其中模型用于綁定鍵值數(shù)據(jù)和自定義事件蚂踊;集合附有可枚舉函數(shù)的豐富API约谈; 視圖可以聲明事件處理函數(shù),并通過RESTful JSON接口連接到應(yīng)用程序犁钟。
9.React
地址:http://reactjs.cn/react/docs/why-react.html
描述:React 是一個 Facebook 和 Instagram 用來創(chuàng)建用戶界面的 JavaScript 庫棱诱。很多人認(rèn)為 React 是?MVC?中的?V(視圖)。我們創(chuàng)造 React 是為了解決一個問題:構(gòu)建隨著時間數(shù)據(jù)不斷變化的大規(guī)模應(yīng)用程序涝动。為了達到這個目標(biāo)迈勋,React 采用下面兩個主要的思想。
10.Ionic?
地址:http://www.ionic.wang/js_doc-index.html
描述:Ionic既是一個CSS框架也是一個Javascript UI庫醋粟。許多組件需要Javascript才能產(chǎn)生神奇的效果靡菇,盡管通常組件不需要編碼,通過框架擴展可以很容易地使用米愿,比如我們的AngularIonic擴展厦凤。
Ionic遵循視圖控制模式,通俗的理解和 Cocoa 觸摸框架相似育苟。在視圖控制模式中较鼓,我們將界面的不同部分分為子視圖或包含其他視圖的子視圖控制器。然后視圖控制器“驅(qū)動”內(nèi)部視圖來提供交互和UI功能宙搬。一個很好的例子就是標(biāo)簽欄(Tab Bar)視圖控制器處理點擊標(biāo)簽欄在一系列可視化面板間切換笨腥。
瀏覽我們的API文檔來了解視圖控制器和Ionic中可用的Javascript實用工具拓哺。
Ionic 是目前最有潛力的一款 HTML5 手機應(yīng)用開發(fā)框架勇垛。通過 SASS 構(gòu)建應(yīng)用程序,它 提供了很多 UI 組件來幫助開發(fā)者開發(fā)強大的應(yīng)用士鸥。 它使用 JavaScript MVVM 框架和 AngularJS 來增強應(yīng)用闲孤。提供數(shù)據(jù)的雙向綁定,使用它成為 Web 和移動開發(fā)者的共同選擇烤礁。
二讼积、前端UI框架
1.Pure
地址:http://purecss.org/layouts/
描述:Pure精心設(shè)計,只為可以在任何Web項目中使用脚仔。為了例證這一點勤众,我們制作了如下幾個模板。這些模板都是響應(yīng)式的鲤脏,并且沒有使用任何JavaScript们颜。
用途:真的是很精美的一個樣式框架吕朵,便于我們快事構(gòu)建一些個人產(chǎn)品,當(dāng)然也可以服務(wù)于工作中的一些項目窥突。
2.bootstrap
地址:http://www.bootcss.com/
描述:簡潔努溃、直觀、強悍的前端開發(fā)框架阻问,讓web開發(fā)更迅速梧税、簡單。
3.EasyUI
地址:http://www.jeasyui.net/ ?(中文網(wǎng))
描述:easyui是一種基于jQuery的用戶界面插件集合称近。
easyui為創(chuàng)建現(xiàn)代化第队,互動,JavaScript應(yīng)用程序煌茬,提供必要的功能斥铺。
使用easyui你不需要寫很多代碼,你只需要通過編寫一些簡單HTML標(biāo)記坛善,就可以定義用戶界面晾蜘。
easyui是個完美支持HTML5網(wǎng)頁的完整框架。
easyui節(jié)省您網(wǎng)頁開發(fā)的時間和規(guī)模眠屎。
easyui很簡單但功能強大的剔交。
?4.Ant Design
地址:http://ant.design/
描述:一個 UI 設(shè)計語言,一套提煉和應(yīng)用于企業(yè)級后臺產(chǎn)品的交互語言和視覺體系
三改衩、可視化組件
1.Echarts
地址:http://echarts.baidu.com/
描述:ECharts岖常,一個純 Javascript 的圖表庫,可以流暢的運行在 PC 和移動設(shè)備上葫督,兼容當(dāng)前絕大部分瀏覽器(IE8/9/10/11竭鞍,Chrome,F(xiàn)irefox橄镜,Safari等)偎快,底層依賴輕量級的 Canvas 類庫ZRender,提供直觀洽胶,生動晒夹,可交互,可高度個性化定制的數(shù)據(jù)可視化圖表姊氓。
2.tableau(收費)
地址:http://www.yuandingit.com/special/tableau/index.html
描述:Tableau 是桌面系統(tǒng)中最簡單的商業(yè)智能工具軟件丐怯,Tableau 沒有強迫用戶編寫自定義代碼,新的控制臺也可完全自定義配置翔横。在控制臺上读跷,不僅能夠監(jiān)測信息,而且還提供完整的分析能力禾唁。Tableau控制臺靈活效览,具有高度的動態(tài)性些膨。
四、前端構(gòu)建工具
1.gulp
地址:http://www.gulpjs.com.cn/
描述:易于使用
通過代碼優(yōu)于配置的策略钦铺,Gulp 讓簡單的任務(wù)簡單订雾,復(fù)雜的任務(wù)可管理。
構(gòu)建快速
利用 Node.js 流的威力矛洞,你可以快速構(gòu)建項目并減少頻繁的 IO 操作洼哎。
插件高質(zhì)
Gulp 嚴(yán)格的插件指南確保插件如你期望的那樣簡潔高質(zhì)得工作。
易于學(xué)習(xí)
通過最少的 API沼本,掌握 Gulp 毫不費力噩峦,構(gòu)建工作盡在掌握:如同一系列流管道。
五抽兆、博客搭建 (下期文章內(nèi)容)
1.技術(shù)組合
1.1 域名
? ? 1.2 ?服務(wù)器识补、網(wǎng)站環(huán)境
? ? 1.3 ?搭建CMS、自己手寫