图书销售管理系统外文文献翻译

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C#及数据库的开发

一、 C#的介绍

C#在某种程度上可以看作是.NET面向Windows环境的一种编程语言。在去去的十几年里,Microsoft给Windows和 Windows API添加了许多功能,VB和C++也经历了许多变化。虽然VB和C++最终已成为非常强大的语言,但这两种语言也存在问题,因为它们保留了原来的一些内容。

对于Visual Basic来说,它的主要优点是很容易理解,许多编程工作都很容易完成,基本上隐藏了Windows API和COM组件结构的内涵。其缺点是Visual Basic从来没有实现真正意义上的面向对象,所以大型应用程序很难分解和维护。另外,因为VB的语法继承于BASIC的早期版本(BASIC主要是为了让初学者更容易理解,而不是为了编写大型商业应用程序),所以不能真正成为结构化或面向对象的编程语言。

另一方面,C++在ANSI C++语言定义中有其自己的根。它与ANSI不完全兼容,因为Microsoft是在ANSI定义标准化之前编写C++编译器的,但已经相当接近了。遗憾的是,这导致了两个问题。其一,ANSI C++是在十几年前的技术条件下开发的,因此不支持现在的概念(例如Unicode字符串和生成XML文档),某些古老的语法结构是为以前的编译器设计的(例如成员函数的声明和定义是分开的)。其二,Microsoft同时还试图把C++演变为一种用于在Windows上执行高性能任务的语言——在语言中避免添加大量Microsoft专用的关键字和各种库。其结果是在Windows中,该语言成为了一种非常杂乱的语言。让一个C++开发人员说说字符串有多少个定义方式就可以说明这一点:char*、LPTSTR、string、CString (MFC 版本)、CString (WTL 版本)、wchar_t*和 OLECHAR*等。

现在进入.NET时代——一种全新的环境,它对这两种语言都进行了新的扩展。Microsoft给C++添加了许多Microsoft专用的关键字,并把VB演变为,保留了一些基本的VB语法,但在设计上完全不同,从实际应用的角度来看,是一种新语言。

在这里,Microsoft决定给开发人员另一个选择——专门用于.NET、具有新起点的语言,即Visual C# .NET。Microsoft在正式场合把C#描述为一种简单、现代、面向对象、类型非常安全、派生于C和C++的编程语言。大多数独立的评论员对其说法是“派生于C、 C++ 和Java”。这种描述在技术上是非常准确的,但没有涉及到该语言的真正优点。从语法上看,C#非常类似于C++和Java,许多关键字都是相同的,C#也使用类似于C++和Java的块结构,并用括号({})来标记代码块,用分号分隔各行语句。对C#代码的第一印象是它非常类似于C++或Java代码。但在这些表面上的类似性后面,C#学习起来要比C++容易得多,但比Java难一些。其设计与现代开发工具的适应性要比其他语言更高,它同时具有Visual Basic的易用性、高性能以及C++的低级内存访问性。C#包括以下一些特性:

●完全支持类和面向对象编程,包括接口和继承、虚函数和运算符重载的

处理。

●定义完整、一致的基本类型集。

●对自动生成XML文档说明的内置支持。

●自动清理动态分配的内存。

●可以用用户定义的特性来标记类或方法。这可以用于文档说明,对编译

有一定的影响(例如,把方法标记为只在调试时编译)。

●对.NET基类库的完全访问权,并易于访问Windows API。

●可以使用指针和直接内存访问,但C#语言可以在没有它们的条件下访问

内存。

●以VB的风格支持属性和事件。

●改变编译器选项,可以把程序编译为可执行文件或.NET组件库,该组件

库可以用与ActiveX控件(COM组件)相同的方式由其他代码调用。

●C#可以用于编写动态Web页面和XML Web服务。

应该指出,对于上述大多数特性,和Managed C++也具备。但C#从一开始就使用.NET,对.NET特性的支持不仅是完整的,而且提供了比其他语言更合适的语法。C#语言本身非常类似于Java,但其中有一些改进,因为Java并不是为应用于.NET环境而设计的。

在结束这个主题前,还要指出C#的两个局限性。其一是该语言不适用于编写时间急迫或性能非常高的代码,例如一个要运行1000或1050次的循环,并在不需要这些循环时,立即清理它们所占用的资源。在这方面,C++可能仍是所有低级语言中的佼佼者。其二是C#缺乏性能极高的应用程序所需要的关键功能,包括保证在代码的特定地方运行的内联函数和析构函数。但这类应用程序非常少。

二、数据库开发过程

基于信息工程的信息系统规划是数据库开发项目的一个来源。这些开发新数据库的项目通常是为了满足组织的战略需求,例如改善客户支持、提高产品和库存管理或进行更精确的销售预测。然而许多数据库开发项目更多的是以自底向上的方式出现的,例如信息系统的用户需要特定的信息来完成他们的工作,从而请求开始一个项目,又如其他信息系统的专家发现组织需要改进数据管理而开始新的项目。即使在自底向上的情况下,建立企业数据模型也是必须的,以便理解现有的数据库是否可以提供所需的数据,否则,新的数据库、数据实体和属性都应该加到当前的组织数据资源中去。

无论是战略需求还是操作信息的需求,每个数据库开发项目通常集中在一个数据库上。一些数据库项目仅仅集中在定义、设计和实现一个数据库,以作为后续信息系统开发的基础。然而在大多数情况下,数据库及其相关信息处理功能是作为一个完整的信息系统开发项目的一部分而被开发的。

1、系统开发生命周期

指导管理信息系统开发项目的传统过程是系统开发生命周期(SDLC)。系统开发生命周期是指一个组织中由数据库设计人员和程序员组成的信息系统专家小组详细说明、开发、维护和替换信息系统的全部步骤。这个过程比作瀑布是因为每一步都流到相邻的下一步,即信息系统的规格说明是一块一块地开发出来的,每一块的输出是下一块的输入。然而如图所示,这些步骤并不是纯线性的,每个步骤在时间上有所重叠(因此可以并行地管理步骤),而且当需要重新考虑先前的决策时,还可以回滚到前面某些步骤。(因而水可以在瀑布中倒流!)图4对系统开发生命周期每一阶段的目的和可交付的产品进行了简明注解。

相关文档
最新文档