摘要:采用前后端分離模式可以減后臺負擔,加快研發效率,當然,前提是前端能做好的話。還是基礎不夠導致的后端是否風格很多公司采用了前后端分離模式后,后端仍然采用以往的傳統風格,這是不合理的,風格的應該是前后端分離的最佳實踐。
早期的web開發是不分前端后端的。
互聯網進入Web2.0時代之后,大量網站從純展示型網站演變成類似桌面軟件的Web應用,網站的前端也變的越來越復雜, 慢慢就形成了這樣一個多帶帶的職業。隨著前后端分離,前端各種框架層出不窮,前端的能力也越來越大,工作量跟后端相比也越來越平衡甚至更多。
為什么要分離?
我們不能“為了分離而分離”,而應該“為了真正理解web開發、為了更好完成需求而分離”。
前后端分離的誤區?
1、前端人員配備是否充足?
由于所在公司以往項目采用傳統開發風格,即以后端MVC為主的開發模式,前端人員僅僅提供靜態html頁面,其余工作皆由后端開發人員完成。采用前后端分離模式可以減后臺負擔,加快研發效率,當然,前提是前端能做好的話。以往只需要提供靜態頁面的前端人員,在前后端分離模式中要負責項目的view+controller部分,即除了靜態頁面,還需要負責頁面的所有交互代碼、以及nodejs與視圖層以及后端API的交互工作,無疑增加了前端人員的學習成本,在沒有足夠知識和人才儲備的情況下,只能讓前端人員加班加點。結果是大量前端人員離職(PS:做這么多事,工資總得加吧?。?/p>
2、前后端職責分配?
很多公司認為采用前后端分離之后,前后端只需要通過指定API進行交互即可,前端負責頁面渲染,Nodejs負責路由分配,后端提供API。忽視了大量關鍵工作,職責分配和細節處理沒有相應文檔規定,緩存機制、圖片上傳下載、數據校驗、語言國際化等等并沒有出具相應信息。另外,大量忽視了nodejs層的作用,僅僅把nodejs當成一個路由中轉,這一方面也是對nodejs技術的不熟悉導致的,其實nodejs能負責很多事,除了復雜業務邏輯處理和數據操作由Java 負責,大量工作完全可以在nodejs層處理。(PS:還是基礎不夠導致的!)
3、后端API是否Restful風格?
很多公司采用了前后端分離模式后,后端API仍然采用以往的傳統風格,這是不合理的,Restful風格的API應該是前后端分離的最佳實踐。ResultFul推薦每個URL能操作具體的資源,而且能準確描述服務器對資源的處理動作,通常服務器對資源支持get/post/put/delete/等,用來實現資源的增刪改查。前后端分離的話,這些api-url是對接的橋梁,采用resultFul接口地址含義才更清晰、見名知意。(PS:用了Spring4.x 竟然還不用rest風格,說不過去啊)
4、前后端協作模式?
前后端分離后,無論是API接口的對接還是測試工作,都涉及到前后端人員的溝通,很多公司采用前后端分離后,前后端協作模式配合力度底,互相等待,開發效率低下,反而不如傳統的開發模式。例如:當后端 API 沒有編寫完成時,前端無法進行調試,這就導致了前端會被后端阻塞的情況。其實像這種互相等待的模式需要改進, Mock Server 可能可以解決一些問題。
如何前后端分離?
怎么做前后端分離?大方向就是
后端專注于:后端控制層(Restful API) & 服務層 & 數據訪問層;
前端專注于:前端控制層(Nodejs) & 視圖層
本人認為的前后端分離模式應該是這樣,當然這不一定正確:
1、項目設計階段,前后端架構負責人將項目整體進行分析,討論并確定API風格、職責分配、開發協助模式,確定人員配備;設計確定后,前后端人員共同制定開發接口。
2、項目開發階段,前后端分離是各自分工,協同敏捷開發,后端提供Restful API,并給出詳細文檔說明,前端人員進行頁面渲染前臺的任務是發送API請(GET,PUT,POST,DELETE等)獲取數據(json,xml)后渲染頁面。
3、項目測試階段,API完成之前,前端人員會使用mock server進行模擬測試,后端人員采用junit進行API單元測試,不用互相等待;API完成之后,前后端再對接測試一下就可以了,當然并不是所有的接口都可以提前定義,有一些是在開發過程中進行調整的。
4、項目部署階段,利用nginx 做反向代理,即Java + nodejs + nginx 方式進行。
參考
課程分享:
直播時間:2018.07.15 晚8:00~10:00pm
新前端能力課堂之前后端分離實戰
或者加入企鵝群:707871733 領取資料
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/96131.html
摘要:我所在的美團酒店事業部去年月份成立,新的業務新的開發團隊,這一切使得我們的前后端分離推進的很徹底。日志監控平臺日志監控平臺是美團內部的一個日志收集系統,目前美團統一使用收集日志,具有接收格式日志的能力,而日志監控平臺也是以格式日志來收集。 轉自:美團技術團隊 作者:美團技術團隊 分享理由:很好的分享,可見,基于Node的前后端分離的架構是越顯流行和重要,前端攻城獅們,No...
摘要:但似乎他們的職責在以前甚至于現在都并不明確,雖然前端是跟瀏覽器打交道,但是最終瀏覽器拿到的頁面是服務器通過模板生成的一個臨時靜態頁面而已。當然,一般傳統上的開發協作模式有兩種一種是前端先寫一個靜態頁面,寫好后,讓后端去套模板。隨著不同終端(Pad/Mobile/PC)的興起,對開發人員的要求越來越高,純瀏覽器端的響應式已經不能滿足用戶體驗的高要求,往往需要針對不同的終端開發定制的版本,為了提...
閱讀 1669·2021-11-17 09:33
閱讀 3531·2021-11-16 11:40
閱讀 3055·2019-08-30 11:23
閱讀 1048·2019-08-29 16:36
閱讀 2464·2019-08-29 13:23
閱讀 1738·2019-08-29 12:59
閱讀 1542·2019-08-29 12:42
閱讀 1979·2019-08-28 18:22