Web前端框架可以分為兩類:
JS的類庫框架
JQuery.JS
Angular.JS(模型, scope作用域,controller,依賴注入,MVVM):前端MVC
Vue.JS(MVVM)*****
Reat.JS (創建自定義標簽,根據id注入標簽)******
Node.JS(服務器端)
UI框架(Html/Css/JS組合)
Bootstrap(簡潔、直觀、強悍的前端框架,讓web開發更迅速、簡單)
下面是具體介紹:
Reat.JS
如果你熟悉 MVC 概念的話,那么 React 的組件就相當于 MVC 里面的 View。如果你不熟悉也沒關系,你可以簡單地理解為,React.js 將幫助我們將界面分成了各個獨立的小塊,每一個塊就是組件,這些組件之間可以組合、嵌套,就成了我們的頁面。
一個組件的顯示形態和行為有可能是由某些數據決定的。而數據是可能發生改變的,這時候組件的顯示形態就會發生相應的改變。而 React.js 也提供了一種非常高效的方式幫助我們做到了數據和組件顯示形態之間的同步。
React.js 不是一個框架,它只是一個庫。它只提供 UI (view)層面的解決方案。在實際的項目當中,它并不能解決我們所有的問題,需要結合其它的庫,例如 Redux、React-router 等來協助提供完整的解決方法。
Vue.JS
Vue.js是用于構建交互式的 Web界面的庫。它提供了 MVVM數據綁定和一個可組合的組件系統,具有簡單、靈活的 API。從技術上講, Vue.js集中在 MVVM 模式上的視圖模型層,并通過雙向數據綁定連接視圖和模型。實際的DOM操作和輸出格式被抽象出來成指令和過濾器。相比其它的 MVVM框架,Vue.js更容易上手。
Angular.JS
AngularJS有著諸多特性,最為核心的是:MVVM、模塊化、自動化雙向數據綁定、語義化標簽、依賴注入等等。
用途:通過描述我們應該就能很好的明白AngularJS的真實用途了,MVVM,模塊化,自動化雙向數據綁定等等。除了簡單的dom操作外,更能體現Js編程的強大。當然應用應該視場合而定。
Node.JS
node.js是一個Javascript運行環境(runtime)。實際上它是對Google V8引擎進行了封裝。V8引擎執行Javascript的速度非常快,性能非常好。Node.js對一些特殊用例進行了優化,提供了替代的API,使得V8在非瀏覽器環境下運行得更好。
Node.js是一個基于ChromeJavaScript運行時建立的平臺,用于方便地搭建響應速度快、易于擴展的網絡應用。Node.js使用事件驅動,非阻塞I/O模型而得以輕量和高效,非常適合在分布式設備上運行數據密集型的實時應用。
簡單的說 Node.js就是運行在服務端的 JavaScript。
Node.js是一個基于ChromeJavaScript運行時建立的一個平臺。
Node.js是一個基于ChromeJavaScript運行時建立的一個平臺。
Node.js是一個事件驅動I/O服務端JavaScript環境,基于Google的V8引擎,V8引擎執行Javascript的速度非常快,性能非常好。用途:
(1). RESTful API
這是NodeJS最理想的應用場景,可以處理數萬條連接,本身沒有太多的邏輯,只需要請求API,組織數據進行返回即可。它本質上只是從某個數據庫中查找一些值并將它們組成一個響應。由于響應是少量文本,入站請求也是少量的文本,因此流量不高,一臺機器甚至也可以處理最繁忙的公司的API需求。
(2).統一Web應用的UI層
目前MVC的架構,在某種意義上來說,Web開發有兩個UI層,一個是在瀏覽器里面我們最終看到的,另一個在server端,負責生成和拼接頁面。
不討論這種架構是好是壞,但是有另外一種實踐,面向服務的架構,更好的做前后端的依賴分離。如果所有的關鍵業務邏輯都封裝成REST調用,就意味著在上層只需要考慮如何用這些REST接口構建具體的應用。那些后端程序員們根本不操心具體數據是如何從一個頁面傳遞到另一個頁面的,他們也不用管用戶數據更新是通過Ajax異步獲取的還是通過刷新頁面。
(3).大量Ajax請求的應用
例如個性化應用,每個用戶看到的頁面都不一樣,緩存失效,需要在頁面加載的時候發起Ajax請求,NodeJS能響應大量的并發請求。總而言之,NodeJS適合運用在高并發、I/O密集、少量業務邏輯的場景。