您是否建议使用dot net中的小型数据库应用程序方法软件开发?

时间:2010-07-05 11:28:04

标签: .net vb.net oop methodology

作为软件开发行业的新入口,我尝试使用不同的方式开发我的编程技巧。我发现的一种方法是通过阅读其他作者的代码来提出许多建议。

当我开始开发时,我想对任何应用程序使用面向对象的设计范例。首先,我从小型数据库编程项目开始,如酒店管理,工资单,销售应用程序等。然而,在我的网上搜索源代码的过程中,我发现许多程序员在程序上为这些类型的小应用程序在Internet上开发他们的源代码。尽管他们使用vb dot net或C#(面向对象的语言),但他们尝试遵循程序,例如他们在一个类中定义所有全局方法和变量,然后他们调用从特定形式访问特定操作的方法。

E.g。对于图书馆管理应用程序,设计可能如下所示

   //one global class for whole method and variable definition
Class globals {
//define  public variable and public function such as
//connection to db code
Public  void storebooks() 
{//code for storing books to db
}
Public  void  storeusers
{ //code for storing users to db
}
.
.
//code for searching books  …etc
}

然后表单使用特定的全局方法和变量进行操作,就像vb6中的模块声明一样。

我的问题是,当我尝试执行应用程序时,我尝试使用oop方法,通过定义类对象,属性等等。 我正朝着正确的方向前进吗?我应该使用面向对象的方法开发这些类型的应用程序(虽然很小)或者我应该坚持使用我在网络上找到的上述类型代码(程序方式)?

请详细解释我何时使用oop方法以及何时使用程序(如果适用)。我的目的也是培养我的毕业生软件开发技能

由于

3 个答案:

答案 0 :(得分:1)

尽管辩论“OOP与程序编程”仍然存在,但我怀疑对于这样一个小项目,我们采取了真正的方法论分析。

许多执行简单ERP项目的程序员都有程序背景(Visual Basic< = 6,甚至是COBOL),并且不太了解面向对象的模型。因此,他们使用OO语言作为某种“面向组件”的系统(即他们仅使用预构建的对象而不是程序逻辑)。

结果是这些小软件是维护的噩梦。然而,即使正确应用OOP,它们也会成为一场噩梦,因为通常这个程序没有设计,缺乏正式的规范,有疯狂的时间表等等。因此,程序员属于“代码优先,后期思考”的方法论。

答案 1 :(得分:1)

程序开发实际上没有错。您可以使用它编写漂亮且可维护的应用程序。然而,您经常看到的是将程序实践应用于OO语言。

原因可能是程序员只是来自像C这样的非OO语言,并试图使他的知识适应新语言。也可能是应用程序非常简单,程序方法最适合。

我认为一种有效的方法是确定您要创建的应用程序类型。如果您知道可以选择所需的平台和语言。但这并不总是可行的,因为平台和语言已经定义(由管理层等)。

编写纯粹的OO应用程序并不像看起来那么容易。特别是找出您的域名模型(您的应用程序设计基础)可能很困难。但是根据我的经验,一旦你拥有这个模型,创建一个小的或大的OO应用程序是相当容易的。当然,了解所有流程(用例,流程/程序(!))以便能够在模型中定义关系非常重要。

OO的一个重大缺陷就是过度设计。数百个具有继承性的类和类似的东西。这样做最终会使用膨胀的应用程序来实现不值得的功能。

简而言之:让自己明白OO的本质和其他范例的本质,并考虑什么是你想要构建的应用程序的最佳选择。作为一种练习,您还可以创建OO和程序的应用程序,并查看您可以从中学到什么。

说到自己,我几乎总是将OO用于C#(或Java)中的应用程序,也就是简单的应用程序。模型的深度也取决于复杂性和可维护性。通常我有几个选项的原型,然后决定我的最终设计(建议:总是绘制/设计你的模型!)。我仍然不相信OO范式适合所有人。

答案 2 :(得分:0)

Wrox Publishing出版的一本名为“Refactoring in Visual Basic”的书是观察面向对象设计的程序开发的重要资源。

通过示例,您可以快速将程序解决方案编写为小的,可管理的问题,只是让您的客户要求进行修订和日益复杂的改进,而这反过来又会受益于面向对象开发的更自主性。

虽然本书不一定是各种开发策略和实现的概述,但它通过重构的迭代过程在对比不同技术方面做得非常出色。