MVC

什么是MVC(模型视图控制器)?

确切的讲MVC是一种软件设计规范,早在1970年MVC的理念就已经诞生。不过长期以来MVC都是应用在重逻辑开发的软件领域和互联网产品的后台开发领域。

开发人员按照Model(模型) - View(视图) - Controller(控制器)相分离的逻辑进行需求开发,将输入(View)、处理(Controller)、输出(Model -> View)独立开,这种逻辑的好处在于,业务逻辑与用户界面分离之后,后期对于界面的改版以及对于用户交互的处理变化,仅仅需要改动View层即可,不在需要对业务逻辑层进行多大的改动。后期的维护成本会减少很多。

Model是需要渲染到页面中的数据模型,View是用户可以接触到的的界面,Controller是业务逻辑控制。

MVVM:

开发人员只要考虑和处理Model(数据模型)的变化即可,不用考虑Model和View之间的数据绑定同步,更不用花精力用大量的代码获取DOM元素改变DOM元素的值来完成界面数据的变化。所有工作交给VM(View-Model)来处理。

MVVM并没有业务逻辑的控制器,它通过数据双向绑定,实时更新View和Model层,当数据模型发生变化的时候,用户界面(DOM)的内容会即时更新。反之如果用户操作导致某些DOM内容变化(如input),ViewModel也会即时的将Model数据模型更新。

实际上还有一种模式叫做MVP,P是Presenter,它与MVVM类似,但不是双向绑定。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容