MVC是一种设计(架构)的思想:
分层:
C层:controller是处理业务逻辑层的----controller目录下;
M层:model是处理数层----model目录下;
V层:view是数据的展示-----view目录下
出现的方式分为两种:
1:功能:
C层是controller是处理业务逻辑层的;
M层是model是处理数据增删改查等工作;
V层是view是数据的展示;如html、js、css
服务器一般情况下有浏览器发送到服务端,服务器夹杂这请求到controller进行处理,这有一个关键的技术就是模板引擎,将数据和页面交给模板引擎返回完整的页面出来,在有服务器返回给客户端。整合的数据大多都是由html来展示的,虽然MVC是后端的架构,针对的客户端是浏览器,因为是客户端在解析html。
2:人工:
小型的项目:区分的有前端有后端,后端上业务逻辑和数据就由一个人来写了。
大型的项目有一个设计理念是工种分层。
工种分层:区分清楚,有专门的数据库工程师,后端只操作业务逻辑程序、专门请求接口就好了。
MVC缺点:
后端:
如果客户端由浏览器换成别的别的客户端(是有浏览器换成非浏览器。如:手机);
同样需要数据的时候,如果是MVC解写出来的数据,别的客户端可能解析不了;
手机端用浏览器还好说,因为同样有html;非浏览器展示数据的时候MVC就有点做不了这个工作了,因为mvc的v层主要就是html;
前端:
随着移动端的来临,(如android、ios…)主要依然需要数据而不是html页面;由此做了个前后端分离;对于网站来说也需要前后端分离;
后端需要套提供数据的代码如:vue
MVC优点:
MVVM:解决了MVC能提供html的单一性,让我们后端只提供数据的时候我们的浏览器怎么解析数据的一个工具而已
MVVM解决了前端程序员操作DOM的繁琐,让前端也可以只关心数据即可,不在关系数据之后