m+c+v

    模型(model)负责维持应用程序的状态。有时候这种状态是短暂的,只在用户的几次操作之间存在 ;
有时候这种状态则是持久的,需要将其保存在应用程序之外(通常保存在数据库中)。
    模型携带着数据,但又不止是数据:它还负责执行施加于这些数据之上的业务规则。譬如说,     “对于
20 元以下的订单不予打折”这一约束就要由模型来确保。这种做法是很有意义的。由于将业务规则的实
现放进模型中,我们可以确信应用程序的其他部分不会搞出非法的数据来。模型不仅是数据的容器,还是
数据的监护者。
    视图(view)负责生成用户界面——通常会根据模型中的数据来生成。譬如说,一个在线商店可能需
要将一系列商品显示在屏幕上。通过模型可以访问这个商品列表,但还需要一个视图,它通过模型访问商
品列表,并将其格式化为最终用户能够理解的形式。视图可能允许用户以多种方式输入数据,但输入的数
据一定不由视图本身来处理,视图的唯一工作就是显示数据。出于不同的目的,可能会有多个视图访问同
一个模型。在我们的在线商店中,就有一个视图显示分类的商品信息,还有管理员使用的视图用于添加和
编辑商品信息。
    控制器(controller) 负责协调整个应用程序的运转。控制器接收来自外界的事件(通常是用户输
入),与模型进行交互,并将合适的视图展示给用户。

你可能感兴趣的:(C++,c,工作,C#)