欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

程序員該如何正確理解前后端分離?

錢多多2年前13瀏覽0評論

我喜歡這樣的問題。

如果是問“什么是正確的前后端分離”,我還真不敢回答,生怕自己的理解有什么偏差;但是問怎么“理解前后端分離”,那我可以結合自身的工作,談談我對前后端分離的理解,也歡迎大家提出不同的理解。

  • 我07年參加工作就是做企業(yè)級項目的開發(fā),那時候的一些項目都只有一個包,沒有什么代碼規(guī)范,業(yè)務邏輯散落在各處,甚至是JSP中直接訪問數(shù)據(jù)庫并做業(yè)務處理。

  • 后來逐漸有了一些規(guī)范,頁面就是頁面,代碼就是代碼,很多項目開始使用Ajax框架。

  • 發(fā)展的更進一步,后端代碼有了分層,cotroller/service/dao,可能每個項目分層策略不同(三層和兩層居多),每層的叫法不同(cotroller還是action),數(shù)據(jù)從頁面到最后訪問數(shù)據(jù)庫,需要走到多個分層中。

  • 不過到了此階段,在企業(yè)級項目的開發(fā)過程中,Java程序員依然要兼顧前后端的開發(fā),所以前端頁面的樣子嘛,達不到美觀的程度,也就是能用。

繼續(xù)發(fā)展,很多項目開始變成了前后端分離。對于前后端分離的定義我是這樣理解的:

  • 頁面是頁面,代碼是代碼,但是他們在一個包中,這個肯定不能算前后端分離;

  • 前端頁面一個程序包,后臺代碼一個程序包,兩個包都需要部署到Tomcat上,前端調用后臺的接口;我認為這個也不是嚴格的前后端分離,但是我覺的這樣做也沒有問題;

  • 如果前端只有HTML文件,放到HTTP服務器上,瀏覽器只訪問獲取這些HTML就好了,數(shù)據(jù)是從后臺程序提供的接口獲得;這樣才算是前后端就分離了。

  • 前后端分離有很多的好處:前端開發(fā)和后端開發(fā)可以各司其職,約定好接口之后就可以并行開發(fā);后端接口可以復用,如果項目同時有電腦網頁端、移動網頁端、APP端等多個入口的時候,后端可以只有一個;

  • 帶來好處的同時,也會有一些缺點,例如:增加了架構的復雜性,如果技術能力不足的團隊,可以考慮半分離(例如我們部門都是企業(yè)級應用,都沒有前端開發(fā)人員);如果是面向互聯(lián)網的應用,需要搜索引擎抓取,就需要服務器端渲染;另外前后端交互的接口,也需要花時間和精力設計。

  • 最后,是否需要使用前后端分離,還需要根據(jù)項目的實際情況決定。

我將持續(xù)分享Java開發(fā)、架構設計、程序員職業(yè)發(fā)展等方面的見解,希望能得到你的關注。