软件的模型

软件的模型

在软件开发领域,模型用来表示真实世界的实体。在软件开发的不同阶段,需要为目标系统创建不同类型的模型。在分析阶段,需要创建概念模型。在设计阶段,需要创建与模型(面向对象)和数据模型(面向关系)。

概念模型

概念模型用来模拟问题域的真是实体。描述了每个实体的概念和属性,以及实体之间的关系。在这个阶段,并不描述实体的行为。

创建概念模型的目的是帮助更好的理解问题域,识别系统中的实体,这些实体在设计阶段很有可能变为类。

         实体与实体之间存在三种关系:一对一,一对多,多对多。

关系数据模型

         到目前为止,关系数据库仍然是使用最广泛的数据库,它存储的是关系数据。关系数据模型是在概念模型的基础上建立起来的,用于描述这些关系数据的静态结构,它由以下内容组成:

1、  一个或多个表

2、  表的所有索引

3、  试图

4、  触发器

5、  表与表之间的参照完整性

域模型

在设计阶段,需要在概念模型的基础上创建域模型,域模型是面向对象的。域模型也可称设计模型。域模型由以下内容组成:

1、  具有状态和行为的域对象

2、  域对象之间的关系

域对象

构成域模型的基本元素就是域对象。域对象,即Demain Object,是对真是世界的实体的软件抽象。域对象还可以叫做业务对象,即Business Object(BO)。域对象可以代表业务领域中的人、地点、事务或概念。域对象分为以下几种。

1、  实体域对象

通常,可以把业务领域中的名词作为实体域对象。在J2EE应用中,这些名词可以作为实体EJB。对于普通的Web应用,这些名词可以作为包含状态和行为的JavaBean。采用JavaBean形式的实体域对象也称为POJO(Plain Old Java Object)。

为了使实体域对象与关系数据库表中的记录对应,可以为每个实体域对象分配唯一的OID(Object Identifier,即对象标识符),OID是关系数据库表中的主键(通常为代理主键)

2、  过程域对象

代表应用中的业务逻辑或流程。它们通常依赖于实体域对象。

3、  事件域对象

代表应用中的一些事件(如异常、警告或超时)

域对象之间的关系

在域模型中,类之间存在四种关系

1、  关联(Association)

关联指的是类之间的引用关联,这是实体域对象之间最普遍的一种关系。关联可分为一对一、一对多、多对多关联。

2、  依赖(Dependency)

依赖指的是类之间的访问关系。

3、  聚集(Aggregation)

聚集指的是整体与部分之间的关系,在实体域对象之间也很常见。

4、  一般化(Generalization)

一般指的是类之间的继承关系。

域对象的持久化概念

狭义的理解,“持久化”仅仅指把域对象永久保存到数据库中;广义的理解,“持久化”包括和数据库相关的各种操作。

         保存:把域对象永久保存到数据库中

         更新:更新数据库中域对象的状态

         删除:从数据库中删除一个域对象

         加载:根据特定的OID,把一个域对象从数据库加载到内存中

         查询:根据特定的查询条件,把符合查询的条件一个或多个域对象从数据库加载到内存中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值