随着不同终端(Pad/Mobile/PC)的兴起,对开发人员的要求越来越高,纯浏览器端的响应式已经不能满足用户体验的高要求,往往需要针对不同的终端开发定制的版本,为了提升开发效率,前后端分离的需要越来越被重视,后端负责业务/数据接口,前端负责展现、交互逻辑,同一份数据接口,可用于多个终端。
传统的前后端:
后端是跟数据库跟服务器打交道的,前端是跟浏览器打交道的。但似乎他们的职责在以前甚至于现在都并不明确,虽然前端是跟浏览器打交道,但是最终浏览器拿到的页面是服务器通过模板生成的一个临时静态页面而已。所以,实际上后端也掺和进来了,因为他要处理模板。当然,一般传统上的开发协作模式有两种:
一种是前端先写一个静态页面,写好后,让后端去套模板。静态页面可以本地开发,也无需考虑业务逻辑只需要实现View即可。不足是还需要后端套模板,这些前端代码后端需要浏览一遍,以免出错。
另一种协作模式是,前端直接去写模板,这样做的问题在于,前端编写过程中很依赖与后端环境,如果当后端没写完的情况下,前端几乎没法干活。
模板引擎
模板引擎是相当古老的东西了,现在能看到的很多后端编程语言其实都是基于模板引擎的。但这种语言级的模板引擎其实很难让开发者满意。以前写 ASP 的时候觉得用程序把数据库查询出来的数据填入页面中是一件很痛苦的事情。不是写出一堆凌乱的标签就是程序里做一堆字符串拼接。如果再考虑上内容的安全性,要做各种过滤和转义,简直会让人奔溃。前后端分离
前后端分离的故事得从 Ajax 说起。在 Ajax 流行起来后,大家都开始了「无刷新」之旅。当时大部分网站都是以链接形式跳转的时候,自己使用「无刷新翻页」觉得已经很先进了。后来无刷新翻页也渐渐开始烂大街,百度搜一下可以搜出一坨东西,于是就开始考虑全页面的无刷新操作。渐渐地「Web 接口」这种东西出现,但是此时的「接口」其实主要还是直接输出 HTML,并没有考虑结构化之类的东西单页模式
单页模式是前后端分离的一种应用。而单页应用最主要的特点就是局部刷新,这通过前端控制路由调用AJAX,后台提供接口便可以实现,而且这样的方式用户体验更加友好,网页加载更加快速,开发和维护成本也降低了不少,效率明显提升。
如对本文有疑问, 点击进行留言回复!!
荐 css的3中水平居中方式和4中水平垂直居中方式及应用情形速记
网友评论