web開發的前後端分離總結筆記

解釋:Nginx;JSON;Ajax;RESTful Web Services;Node.js。
1.Nginx是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,並在一個BSD-like 協議下發行。其特點是佔有內存少,併發能力強。


2.JSON 指的是 JavaScript 對象表示法(JavaScript Object Notation),JSON 是輕量級的文本數據交換格式。


3.Ajax 即“Asynchronous Javascript And XML”(異步 JavaScript 和 XML),是指一種創建交互式網頁應用的網頁開發技術。


4.REST:全稱是Representational State Transfer表述性狀態轉移,一中架構風格。在MVC中,可以實現首先從瀏覽器發送AJAX請求,然後服務端接受該請求並返回JSON數據返回給瀏覽器,最後在瀏覽器中進行界面渲染。


5.Node.js是一個Javascript運行環境(runtime)。


在傳統的web開發中,前後的分離是以瀏覽器爲界限,將客戶端展示給用戶的部分稱爲前端,而將運行在服務器端負責業務邏輯和數據準備的開發稱爲後端。例如在jsp開發中,前後端代碼存放於同一個代碼庫中,甚至是同一工程目錄下。頁面中還夾雜着後端代碼。前後端工程師進行開發時,都必須把整個項目導入到開發工具中。前端先編寫HTML,完成頁面設計,然後後端開發者在其中改寫添加jsp代碼,最後將全部代碼打包成爲一個war包部署到同一服務器上。


前後端分離不僅是一種開發模式,而是web開發中的一種架構模式。


存儲分離:在如今的前後端完全分離的web開發中,前後端代碼在不同的代碼庫中,前後端開發只需要設計好API接口和約定數據,然後前後端並行開發。前端代碼中有可以進行Mock測試(通過構造虛擬測試對 象以簡化測試環境的方法)的僞後端,能支持前端的獨立開發和測試。後端代碼中除了功能實現外,也可以使用接口測試平臺進行接口自測。最後,前後端集成。


前後端交互:前後端分離架構中,後端只需要負責按照約定的數據格式向前端提供可調用的API服務即可。前後端之間通過HTTP請求進行交互,前端獲取到數據後,進行頁面的組裝和渲染,最終返回給瀏覽器。


部署分離:前端部署node.js服務器,前端html頁面通過ajax調用後端的restuful api接口並使用json數據進行交互。


後端java工程師:
java基礎,設計模式,jvm原理,spring+springmvc原理及源碼,linux,mysql事務隔離與鎖機制,mongodb,http/tcp,多線程,分佈式架構(dubbo,dubbox,spring cloud),彈性計算架構,微服務架構(springboot+zookeeper+docker+jenkins),java性能優化,以及相關的項目管理等等。
後端:三高(高併發,高可用,高性能),安全,存儲,業務等等。


前端工程師:
html5,css3,jquery,angularjs,bootstrap,reactjs,vuejs,webpack,less/sass,gulp,nodejs,Google V8引擎,javascript多線程,模塊化,面向切面編程,設計模式,瀏覽器兼容性,性能優化等等。

前端:頁面表現,速度流暢,兼容性,用戶體驗等等。

前後端分離開發流程:

數據接口規範流程:

前後端分離架構例子:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章