预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共44页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第8章 构建系统:面向对象编程 软件是在代码之外发生的一切事情。 第8章 构建系统:面向对象编程 你将从本章学到什么? 什么是编程 为什么说编程比写代码内容更宽泛 如何用Java实现对象设计 如何用结构化查询语言(SQL)实现持久性设计 编程技巧、技术与习惯用语 为什么需要阅读本章? 所有为建模付出的努力的目标就在于,确保解决方案以一种有效而充分的方式满足用户需求。但是为了确保成功,程序员必须理解如何把设计模型转变成可以工作的源代码。在本章中,你将会了解到为系统开发面向对象代码以及持久代码的基础知识。 面向对象编程的目标在于构建实际可用的系统,开发完成系统设计的代码。如图8-1所示,设计制品用虚线框来描述,它们驱动着源代码的开发。与图3-1、图6-1、图7-1一样,箭头表示“驱动”关系,设计模型中的信息驱动源代码的开发,反之亦然。图8-1中最重要的含义是,设计和编程高度相关并且迭代。在编程中付出的努力很快就会揭示出设计过程中的弱点,这些地方需要表述出来。可能设计者没有意识到编程环境中的特定功能,因此也就没有利用它们。 图8-1中没有表明的一点是,要把注意力放在两种类型的源代码上:用Java和C++等开发的面向对象源代码,持久机制源代码—如数据定义语言(DDL)、数据操作语言(DML)、存储过程和触发器等。8.2节描述了怎样使用Java语言实现通用面向对象的概念,8.3节描述了持久性编码。类模型、状态图、用户界面原型、业务规则与协作图驱动面向对象源代码的开发,而持久模型则驱动持久代码的开发。 定义 业务规则(businessrule):软件必须满足的策略。业务规则是功能需求所“了解”的内容,即由功能需求履行的控制和准则。一条操作原则或机构策略。 图8-1设计制品及其相互关系概述 类图(classdiagram):类图显示系统的类和类间的关联。 类模型(classmodel):类图及其相关文档。 协作图(collaborationdiagram):一种UML图,用以显示类的实例、它们之间的相互关系以及它们之间的消息流。协作图的着眼点一般是发送和接收消息的对象的结构化组织。 组件图(componentdiagram):一种UML图,用以描述组成应用程序、系统或企业的软件组件。并且也描述组件、它们之间的相互关系、交互以及公共接口。 数据定义语言(datadefinitionlanguage,DDL):由持久机制支持的命令,使得在它之内的结构(如关系表或类)创建、删除或修改变为可能。 数据操作语言(datamanipulationlanguage,DML):由持久机制支持的命令,使得在它之内的数据访问变为可能,包括数据的创建、检索、更新和删除。 部署图(deploymentdiagram):一种UML图,用以显示系统硬件、软件以及中间件的配置。 开发/维护折衷(development/maintenancetrade-off):加速开发过程的开发技术经常对系统维护工作量有负面影响,而导致更多维护工作的技术则负面影响了开发工作量,至少在短期内是这样的。 持久机制(persistencemechanism):永久存储设施用来使对象持久。例子包括关系数据库、对象数据库、平面文件以及对象/关系数据库。 持久模型(persistencemodel):一种描述软件系统持久数据方面的模型。 原型(prototype):项目的模拟,例如用户界面或系统体系结构,使用它的目的是在投入重要资源之前把你的方法告知他人。 状态图(statechartdiagram):一种UML图,用以描述对象所处的状态以及状态间的转移。以前也被称做状态图表(statediagram)或状态转移图(state-transitiondiagram)。 存储过程(storedprocedure):运行在持久机制中的一种操作。 触发器(trigger):作为数据操作语言在持久机制内活动的结果自动触发的一种操作。 用户界面(userinterface,UI):软件的用户界面是与用户直接交互的部分,包括屏幕显示、报表、文档以及软件支持(通过电话、电子邮件等)。 用户界面原型(userinterfaceprototype):系统用户界面的一个原型。用户界面原型可以和手绘图一样简单,也可以像一组编程屏幕显示、页面或报表一样复杂。 提示:采取并遵循编程标准及准则你的团队(理想情况下会是你的机构),必须就开发过程中遵循的标准及准则达成一致。编程标准和准则对于确保开发人员的工作达到机构需要的质量标准来说是很关键的。开发人员在机构中工作时应该遵守标准和准则,因此你就要检查他们是否按照要求做事。这些标准和准则应该在编程开始之时就定义/选择好,这样你的团队