View
- MVC 中视图是指数据有目的,按规则呈现出来的组件。因此不止是 UI,其实 JSON 和 XML 这种可以呈现数据的格式也算是一种 view
- 页面聚合技术
- 结构聚合:指的是将一个页面中不同的区域聚合起来,体现了分而治之的思想。组件化、模块化算是这种思路。
- 数据 - 模板聚合:指的是聚合静态的模板和动态的数据,体现了解耦的思想。PHP、JSP、前端模板框架都是类似的思路。
- 服务端和客户端聚合方式的比较
- 目前比较流行的是前后端分离,让客户端和服务端各司其职,并将两端的运算能力都发挥出来。
- 架构上,客户端聚合达成了客户端 - 服务端分离和模板 - 数据聚合二者的统一,这往往可以简化架构,保持灵活性。
- 静态资源可以放到 CDN,保证了页面访问的速度。
- 动态数据则通过后端获取,保证了数据的一致性。
- 资源上,客户端聚合将服务器端造成的计算压力,分散到了客户端。
- 客户端聚合要求客户端具备一定的规范性和运算能力。
- 常见聚合技术
- iframe
- 模板引擎,如 Mustache
- 在使用模板引擎的时候,需要注意保持 View 层代码职责的清晰和纯粹。
- Portlet (不怎么用到了)
- SSI 服务端包含
- 最常用的聚合技术还是模板引擎技术。
解耦拆分:无论是分层、分模块、还是分离静态模板和动态数据,当我们定义了不同的拆分方法,我们就把一个复杂的东西拆分成了组成单一、职责清晰的几个部分,分别处理以后,再聚合起来。不同的聚合方法正是由这些不同的拆分方法来决定的。
网友评论