关于.NET软件设计理念

时间:2014-06-28 13:41:01

标签: .net

通常,在使用SDK和Frameworks for Mobile平台或开源WebApp Framework(如PHP - &gt; 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的软件设计理念是什么,如果直接使用控件进行操作,例如我见过的例子,或者这些例子是错误的,控件只是向用户显示数据的视图。

2 个答案:

答案 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

设计模式的

在这里查看:http://www.dofactory.com/Patterns/Patterns.aspx