加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

漫衍式之闲侃前后端疏散架构的须要性!

发布时间:2019-02-05 18:55:14 所属栏目:站长百科 来源:https://mp.weixin.qq.com/s/yuj
导读:副问题#e# 作者:孤傲烟 来历:https://mp.weixin.qq.com/s/yujpjWLLh-YpVr-tzK2rkg 因为近期前端抽不出资源,博主最近接办一个前端项目标代码维护事变。拿得手一看,一脸懵逼,和博主昔时所学的jsp开拓方法、操作ajax来哀求数据的单页面开拓方法完全差异。
副问题[/!--empirenews.page--]

  作者:孤傲烟 来历:https://mp.weixin.qq.com/s/yujpjWLLh-YpVr-tzK2rkg

  因为近期前端抽不出资源,博主最近接办一个前端项目标代码维护事变。拿得手一看,一脸懵逼,和博主昔时所学的jsp开拓方法、操作ajax来哀求数据的单页面开拓方法完全差异。然而火坑已经跳下,只能硬着头皮啃,博主只能冷静汇报本身“冲冲冲,四驱兵士在动作”。

  博主始末算是经验了前端开拓的几个时期吧。本文以一种循规蹈矩的要领,讲前后端疏散架构的须要性。不外不得不说一点,今朝前后端疏散架构的文章一搜一大把,博主事实不是专业搞前端的,假如文章有什么领略不到位的处所,请实时指出,不胜谢谢。

  正文

  以博主的资历,没有经验过更早的时期了,一出山SpringMVC和struts2等架构已经很成熟,以是博主最早打仗的开拓方法就是从MVC开拓方法开始的,博主将开拓方法分为未疏散,半疏散和疏散三个时期。

  未疏散时期

  MVC,博主就不多做表明白,在早期JSP+SERVLET中的布局图如下

漫衍式之闲侃前后端疏散架构的须要性!

  大抵就是全部的哀求都被发送给作为节制器的Servlet,它接管哀求,并按照哀求信息将它们分发给恰当的JSP来相应。同时,Servlet还按照JSP的需求天生JavaBeans的实例并输出给JSP情形。JSP可以通过直接挪用要领或行使UseBean的自界说标签获得JAVABeans中的数据。必要声名的是,这个View还可以回收 Velocity、Freemaker 等模板引擎。行使了这些模板引擎,可以使得开拓进程中的职员分工越发明晰,还能进步开拓服从。那么,在这个时期,开拓方法有如下两种方法一:

漫衍式之闲侃前后端疏散架构的须要性!

  方法二:

漫衍式之闲侃前后端疏散架构的须要性!

  先声名一下,方法二已经逐渐裁减。首要缘故起因有两点:

  (1)前端在开拓进程中严峻依靠后端,在后端没有完成的环境下,前端基础无法干活。

  (2)因为趋势题目,会JSP,懂velocity,freemarker的前端越来越少。

  因此,方法二逐渐不被回收。然而,不得不说一点,方法一,着实许多小型传统软件公司至今还在行使。那么,方法一和方法二具有哪些配合的弱点呢?

  I、前端无法单独调试

  在项目上线后,碰着一些题目。好比样式出题目了,因为前端不具备项目开拓情形,那么就有也许呈现如下对话:

  前端:"我这里没题目啊。后端,你哪里正常么?"后端:"我这里不正常啊。要不你过来看一下吧?"前端:"一时我也看不出题目,我也没情形,怎么办?"后端:"你没情形,坐我这边调吧。"然后,前端就满脸不爽的在你那调代码了。更有些情商低的后端就直接在旁边开摁手机,其实是。。。。。

  总结,由于前端无法单独调试。一方面开拓服从低落。另一方面,尚有也许激发公司内部职员上的抵牾。

  II、前端不行停止会碰着靠山代码

  好比前端也许遇到如下布局的代码

  <div><%request.setCharacterEncoding("utf-8")String name=request.getParameter("username");out.print(name);%></div>

  身为前端,在页面里看到了靠山代码,肯定心田黑白常不快的,这种方法耦合性太强。那么,就算你用了freemarker等模板引擎,不能写JAVA代码。那前端也不行停止的要去从头进修该模板引擎的模板语法,无谓增进了前端的进修本钱。正如我们后端开拓不想写前端一样,你想想假如你的靠山代码里嵌入前端代码,你是什么感觉?因此,这种方法异常欠妥。

  III、JSP自己所导致的一些其他题目

  好比,JSP第一次运行的时辰较量迟钝,由于里头包括一个翻译为Servlet的步调。再好比由于同步加载的缘故起因,在jsp中有许多内容的环境下,页面相应会很慢。

  半疏散时期

  前后端半疏散,前端认真开拓页面,通过接口(Ajax)获取数据,回收dom操纵对页面举办数据绑定,最终是由前端把页面渲染出来。这也就是其他博客里说的,Ajax与SPA应用(单页应用)团结的方法。其布局图如下

漫衍式之闲侃前后端疏散架构的须要性!

  步调如下:

  (1)赏识器哀求,cdn返回html页面

  (2)html中的js代码以ajax方法哀求靠山的restful接口

  (3)接口返回json数据,页面理会json数据,通过dom操纵渲染页面

  ps:博主早期就是用jquery的ajax哀求,然后这么做的。

  为什么说是半疏散的?

  由于不是全部页面都是单页面应用,在多页面应用的环境下,前端由于没有把握controller层,前端必要跟后端接头,我们这个页面是要同步输出呢,照旧异步json渲染呢?因此,在这一阶段,只能算半疏散。

  这种方法的优弱点有哪些呢?

  起首,这种方法的利益是很明明的。前端不会嵌入任何靠山代码,前端专注于html、css、js的开拓,不依靠于后端。本身还可以或许模仿json数据来渲染页面。发明bug,也能敏捷定位出是谁的题目,不会呈现相互推脱的征象。

  然而,在这种架构下,照旧存在明明的破绽的。最明明的有如下几点:

  (1)js存在大量冗余,在营业伟大的环境下,页面的渲染部门的代码,很是伟大。(2)在json返回的数据较量大的环境下,渲染的异常迟钝,会呈现页面卡顿的环境(3)seo很是不利便,因为搜刮引擎的爬虫无法趴下js异步渲染的数据,导致这样的页面,SEO会存在必然的题目。(4)资源耗损严峻,在营业伟大的环境下,一个页面也许要提倡多次http哀求才气将页面渲染完毕。也许有人不平,认为pc端成立多次http哀求也没啥。那你思量过移动端么,知道移动端成立一次http哀求必要耗损几多资源么?

  正是由于如上弱点,真正的前后端疏散架构降生了

  疏散时期

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读