通常,在使用SDK和Frameworks for Mobile平台或开源WebApp Framework(如PHP - > CakePHP , Laravel 等)时,责任分配通过将类划分为模型,查看和控制器(MVC架构)来完成。该模式基本上是填充您的Views
(让我们说TextView
(Android)/ UITextView
(iOS)/ <div>
(来自PHP的HTML) 模型类数据。
它是这样的:textView.setText(myModel.getField())
我是.NET的新手,我实际上是在我的大学里通过软件开发课程学习它,我注意到的前两件事是视图被称为控件 。我注意到的第二件事是提供的示例使用控件本身来管理数据。也许我没有正确解释自己,所以我想给你举个例子:
在区域中,我将查看与模型分开,然后通过控制器获取对该模型的引用(让用Store#getSaleById(int saleID) : Sale
double calculateTotal(List<Sale> mySale) {}
他们直接传递控件,就像它作为查看和模型一样,操作是通过直接从控件获取数据来完成的。
double calculateTotal(ListBox listBox) {}
所以我想知道.NET的软件设计理念是什么,如果直接使用控件进行操作,例如我见过的例子,或者这些例子是错误的,控件只是向用户显示数据的视图。
答案 0 :(得分:3)
您描述的做法是许多软件开发人员的不良做法,大多数框架都不禁止这种做法。你可以通过错误的编码来滥用几乎所有的框架。
最近几年,开发人员越来越意识到这种工作方式并非如此。因此,所有新框架都有一种工作方式,其中MVC类似模式是中心。
对于Windows Forms开发,一切都是你,你可以以类似的方式编写你的软件,但框架中没有很多工具可以帮助你。
WPF,来自Microsoft的新UI框架通过稍微改编的模式版本MVVM更好地支持MVC。答案 1 :(得分:0)
有两种主要架构:windows窗体和mvc。 Windows窗体使用组件和控件。 Mvc没有。两者都有用途。
听起来mvc可能就是你要找的东西。
有关Windows窗体的介绍,请点击此处:http://www.w3schools.com/aspnet/aspnet_intro.asp
for mvc look here:http://www.w3schools.com/aspnet/mvc_intro.asp
设计模式的