• mvc 跟mvp 和mvvm的区别


    MVC(Model-View-Controller),MVP(Model-View-Presenter)和MVVM(Model-View-ViewModel)都是软件架构模式,用于将应用程序的不同组成部分分离开来,以便更好地组织和管理代码。

    1. MVC模式
       - Model(模型):处理数据和业务逻辑。
       - View(视图):负责显示数据和与用户进行交互。
       - Controller(控制器):接收来自视图的用户输入,并根据输入更新模型和视图。

       MVC模式的特点是模型和视图之间的直接交互,控制器作为中介将用户输入传递给模型和视图。这种模式适用于简单的用户界面,但当应用程序复杂度增加时,控制器可能变得庞大和复杂。

    2. MVP模式
       - Model(模型):处理数据和业务逻辑。
       - View(视图):负责显示数据和与用户进行交互。
       - Presenter(Presenter):作为中介者,接收来自视图的用户输入,并处理业务逻辑,然后更新模型和视图。

       MVP模式的特点是将控制逻辑从视图中分离出来,由Presenter来处理。视图和模型之间没有直接交互,所有的交互都通过Presenter来完成。这种模式使得视图更加轻量级,易于测试。

    3. MVVM模式
       - Model(模型):处理数据和业务逻辑。
       - View(视图):负责显示数据和与用户进行交互。
       - ViewModel(视图模型):连接视图和模型,将模型数据转换为视图可以使用的形式。

       MVVM模式的特点是引入了数据绑定机制,ViewModel负责将模型数据转化为视图可以直接使用的形式,并且将视图和模型之间的交互通过数据绑定实现。这种模式使得视图和模型之间的耦合度更低,同时也减少了大量的样板代码。

    总的来说,MVC模式是传统的模式,MVP模式在MVC的基础上引入了Presenter来分离视图和模型的交互,MVVM模式在MVP的基础上引入了ViewModel来进一步减少视图和模型之间的耦合度。每种模式都有其适用的场景,选择合适的模式取决于应用程序的需求和复杂性。

  • 相关阅读:
    戟星安全实验室|五分钟教你挖掘小程序漏洞
    Activiti 8.0.0 发布,业务流程管理与工作流系统
    arm-2d库详细介绍
    数据结构与算法
    maven==docker搭建私有maven仓库,编写starter并发布到私有maven仓库,在项目中使用私有仓库中的starter
    面试题目记录
    SendKeys.SendWait 函数模拟键盘输入
    正式发布丨VS Code 1.71
    @Retryable和Guava retry
    JavaSE之动态代理
  • 原文地址:https://blog.csdn.net/hdhhd/article/details/134008916