We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
之前有碰到过一些关于对 MVC/MVP/MVVM 模式理解的面试题,以及它们之间的异同,这里就做下简单的笔记。
由于软件架构设计模式的知识点理解起来会比较吃力,网上也很少有较权威的讲解文章,所以这里的笔记可能会存在知识点比较浅显或者错误的理解,待以后有深刻的理解后再修正,这里只记录当前对 MV* 模式的理解。
需要注意的是,这种 MV* 模式和设计模式是有区别的。MV* 模式是一种管理与组织代码的学问,其本质是一种软件开发的模型。而设计模式是在解决一类问题的基础上总结出来的解决方案,是具体写代码的方式。
且前后端的 MV* 模式是不相同的,不能混为一谈。以 MVC 模式为例区分前后端之间的区别如下:
MVC 分为 3 个模块,Model(数据层),View(视图层),Controller(控制器)。模块之间的依赖关系如下:
数据流回路流程如下:
MVP 分为 3 个模块,Model,View,Presenter。模块之间的依赖关系如下:
MVVM 分为 3 个模块,Model,View,ViewModel 。模块之间的依赖关系如下:
浅析前端开发中的 MVC/MVP/MVVM 模式
浅析 MVC, MVP 与 MVVM之间的异同
浅谈 MVC、MVP 和 MVVM 架构模式
The text was updated successfully, but these errors were encountered:
No branches or pull requests
前言
之前有碰到过一些关于对 MVC/MVP/MVVM 模式理解的面试题,以及它们之间的异同,这里就做下简单的笔记。
由于软件架构设计模式的知识点理解起来会比较吃力,网上也很少有较权威的讲解文章,所以这里的笔记可能会存在知识点比较浅显或者错误的理解,待以后有深刻的理解后再修正,这里只记录当前对 MV* 模式的理解。
需要注意的是,这种 MV* 模式和设计模式是有区别的。MV* 模式是一种管理与组织代码的学问,其本质是一种软件开发的模型。而设计模式是在解决一类问题的基础上总结出来的解决方案,是具体写代码的方式。
且前后端的 MV* 模式是不相同的,不能混为一谈。以 MVC 模式为例区分前后端之间的区别如下:
MVC/MVP/MVVM 是什么?之间的异同又是什么?
MVC
MVC 分为 3 个模块,Model(数据层),View(视图层),Controller(控制器)。模块之间的依赖关系如下:
数据流回路流程如下:
MVP
MVP 分为 3 个模块,Model,View,Presenter。模块之间的依赖关系如下:
数据流回路流程如下:
MVVM
MVVM 分为 3 个模块,Model,View,ViewModel 。模块之间的依赖关系如下:
数据流回路流程如下:
总结
参考
浅析前端开发中的 MVC/MVP/MVVM 模式
浅析 MVC, MVP 与 MVVM之间的异同
浅谈 MVC、MVP 和 MVVM 架构模式
The text was updated successfully, but these errors were encountered: