什么是用户界面设计模式中的模型,如MVC,MVP,MVVM?

Ale*_*sev 5 .net c# user-interface design-patterns

我已经看过许多使用模型 - 视图UI设计模式的教程和示例,并且它们都以非常不同的方式实现它们,尤其是模型部分.在一些示例中,Model是某些服务层中某些数据访问层(如存储库模式)中的数据(某些数据库的实际对象表示)...
如果有人告诉您他在他的应用程序中使用MV*模式,它会是什么告诉你应用程序设计?它是否在对象图中维护数据库的内存表示,并将其用作数据源或某些数据访问层来查询数据库...

您将选择什么作为面向数据的智能客户端应用程序的模型,其中主要包含带有表的标签页?

tva*_*son 7

单词模型至少用于两种感官.有你的域名模型.这意味着你如何表示你的数据.有许多方法可以构建数据,还有许多方法可以访问它.当我们在这个意义上谈论模型时,我们并不特别关心你如何访问构成它的结构,即数据访问或持久层,尽管你也可能听到人们谈论持久性模型.通过这种方式,人们意味着持久性实现使用的特定哲学,例如ActiveRecord或Repository.您可能还会听到这些被称为模式的内容.

最后,单词模型在视图上下文中的MVC,MVP和MVVM中具有非常特定的含义.在该上下文中,它表示与视图关联的特定数据对象,即视图模型.这可能是您的域对象之一,但更典型的是它是一个视图特定的对象,它封装来自一个或多个域对象的数据以及辅助数据,例如特定视图使用的用户数据.

对于您的应用程序,请选择最适合您的开发环境和语言的持久性模型 - MS世界中的LINQ to SQL,LINQ to Entities,nHibernate,Castle ActiveRecord等为每个视图创建特定于视图的模型(类)保存该视图所需的数据.使用控制器查询域模型,以提取视图所需的信息并将其映射到视图模型上.