一个在线的web页面是如何做出来的 2
2018-06-07 本文已影响1人
废柴社
这仍是一篇小白笔记。
MTV
看到Django中MTV模型的介绍,一下对前面写一个在线网页有了更结构化的认知。
发出请求——> web服务器处理 ——> 获得一个反馈 ,web做的就是下图中MTV这部分。
Django web MTV最开始一直把这些东西混在一块,导致认识非常不清晰,也就是说不清楚一个产品是如何运作的。
分开来说,会简单很多:最外层就是网页长成什么样子,最里层就是数据库的调配,中间就是当一个URL请求被触发后-哪些东西会做出响应(调取数据计算、返回需要显示的东西和样子)
图中的MTV三层,分别是 Views ,传入一个url请求后,Views模块去调配对应的M、T 组合后返回给用户;Models,用来连接、处理数据库数据的;Templates 页面长什么样子的模板。
这三块在Django中被划分为MTV,在别处可能是MVC,可能略有区别,但本质上都是为了将不同的工作分开处理,保证秩序和效率。
分解子任务是一种处理复杂任务的好方法
MTV也好,MVC也好都是将任务分离纯粹的一种好的方式:即把一个复杂任务拆成一个一个的子任务。
前端在显示一个图表时可能的方案:
- 取数:利用ajax 从引用接口取数;(数据层)
- 套模版:将数据传递给 对应的JS图表模板
- 显示模版:执行模版调用函数。
也可以把取数、套模版放在一步处理,但分开会加清晰。