更新時間:2020-11-03 17:18:24 來源:動力節(jié)點 瀏覽2283次
隨著Java Web技術的發(fā)展,JavaWeb項目的分工也越來越明確。JavaWeb項目前后端分離已成為互聯(lián)網(wǎng)項目開發(fā)的業(yè)界標準使用方式,通過nginx+tomcat的方式(也可以中間加一個nodejs)有效進行解耦,并且前后端分離會為以后的大型分布式架構、彈性計算架構、微服務架構、多端化服務(多種客戶端,例如:瀏覽器,車載終端,安卓,IOS等等)打下堅實的基礎。
JavaWeb項目前后端分離是系統(tǒng)架構發(fā)展的必然,也是項目分工的趨勢。
核心思想是前端html頁面通過ajax調(diào)用后端的restuful api接口并使用json數(shù)據(jù)進行交互。
web服務器:一般指像nginx,apache這類的服務器,他們一般只能解析靜態(tài)資源。
應用服務器:一般指像tomcat,jetty,resin這類的服務器可以解析動態(tài)資源也可以解析靜態(tài)資源,但解析靜態(tài)資源的能力沒有web服務器好。
一般都是只有web服務器才能被外網(wǎng)訪問,應用服務器只能內(nèi)網(wǎng)訪問。
隨著時代的發(fā)展,漸漸的許多大中小公司開始把前后端的界限分的越來越明確,前端工程師只管前端的事情,后端工程師只管后端的事情。所謂術業(yè)有專攻,一個人如果什么都會,那么他畢竟什么都不精。大中型公司需要專業(yè)人才,小公司需要全才,但是對于個人職業(yè)發(fā)展來說,建議還是分開比較好。
對于后端java工程師:
把精力放在java基礎,設計模式,jvm原理,spring+springmvc原理及源碼,linux,mysql事務隔離與鎖機制,mongodb,http/tcp,多線程,分布式架構(dubbo,dubbox,spring cloud),彈性計算架構,微服務架構(springboot+zookeeper+docker+jenkins),java性能優(yōu)化,以及相關的項目管理等等。
后端追求的是:三高(高并發(fā),高可用,高性能),安全,存儲,業(yè)務等等。
對于前端工程師:
把精力放在html5,css3,jquery,angularjs,bootstrap,reactjs,vuejs,webpack,less/sass,gulp,nodejs,Google V8引擎,javascript多線程,模塊化,面向切面編程,設計模式,瀏覽器兼容性,性能優(yōu)化等等。
前端追求的是:頁面表現(xiàn),速度流暢,兼容性,用戶體驗等等。
術業(yè)有專攻,這樣你的核心競爭力才會越來越高,正所謂你往生活中投入什么,生活就會反饋給你什么。并且兩端的發(fā)展都越來越高深,你想什么都會,那你畢竟什么都不精。
通過將team分成前后端team,讓兩邊的工程師更加專注各自的領域,獨立治理,然后構建出一個全棧式的精益求精的team。
我們不難看出,JavaWeb項目前后端分離是Java Web技術發(fā)展的必然,也是職業(yè)發(fā)展規(guī)劃的趨勢。或許我們可以魚和熊掌兼得,但是大多數(shù)人還是應該做到術業(yè)有專攻,突出一門技術的優(yōu)勢對于我們的發(fā)展還是有很大幫助的,學而不精反而沒有機會,其實換種方式思考 ,JavaWeb項目前后端分離對于程序員們來說也是一個機會,讓程序員有更多選擇的機會,認為自己更適合前端就做前端,適合后端就可以深入學習后端,本站作為Java全棧學習網(wǎng)站,不僅有前端技術教程還有后端技術教程,讓你在Java學習上有更好的選擇。