设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 软件教学 >> 编程开发 >> 面向对象的应用服务层设计
精品推荐
编程开发点击TOP10
·Java进阶:JNI使用技巧点滴
·专家手把手教你安装MYSQL数据库
·e书工场--制造电子书全攻略
·删除流氓的SQL Server2005
·我的第一个VB程序--“跟我来学VB神童教程”
·Authorware自制拼图游戏
·使用Quick CHM软件轻松编译CHM格式的文件
·DIY自己常用的软件eXeScope
·用Authorware制作自检测在线答题系统
·精细讲述SQL Server数据库备份多种方法
软件教学点击TOP10
·自己动手制作USB启动盘快速简单
·学用金山游侠修改游戏
·几百个软件注册机
·常用软件序列号
·用eBook Edit 自己动手制作exe型电子书
·应用软件注册码大全(最新整理) 1
·Windows Media Player同步歌词秀全攻略
·五分钟玩转电脑迷共享空间
·冰点还原(DeepFreeze)使用帮助
·液晶显示器测试小工具--Monitors Matter CheckScreen
精选专题

面向对象的应用服务层设计

作者: 来源:网络文章 时间:2005-12-13 15:04:16

面向对象的应用服务层设计(3)
在考虑数据实体层的设计策略的时候,需要把握以下要点:

◆ 一致的数据表示方式。在一个系统中,数据的表示方式必须尽可能统一,同时,在处理单个数据和多个数据的时候,处理方式尽可能一致。

◆ 因为数据通常是需要存储到数据库中,因此,良好的映射方法是必需的。

◆ 处理好对象的粒度,即所谓的粗粒度对象、细粒度对象。

一般例子

考虑一个现实的例子,一个仓库中的产品(ProdUCt),在系统中可以使用如下定义:

public class Product{public string Name; //名称
public decimal Price;//价格
public int Count;//数量
}
可以按照如下方法使用Product类:
Product p=new Product();
//……处理Product



这是一个包含了三个属性的Product类的定义。为了便于说明,在这里,我们尽量将问题简化了。

又例如,一张入库单可以使用如下定义:

public class Form{public string ID; //入库单编号
public DateTime AddTime; //入库时间
public FormDetail[] FormDetails; //入库单明细
}
public class FormDetail
{
public Product InProduct; //入库产品
public int Count; //入库数量
}


对于处理单个对象,通常采用上述的方法,但是,当我们需要处理相同类的一组对象,也就是处理一个对象集合的时候,就会有一些小小的麻烦。

如前所述,我们希望在处理单个对象和对象集合的时候,处理的方式尽量统一,这对于软件开发的意义是很大的。常用的处理对象集合的方法有:

◆数组表示的方法

例如,上面的例子中当一张入库单包含多条入库单明细的时候采用的方法。为了灵活性,也可以使用容器来,如Java中的Vector或C#的ArrayList(C#)。只是,在处理对象的时候,需要一个类型转换的操作。这个问题,在支持泛型的语言中不会存在,如使用C++的标准库的容器类。

◆ObjectCollection方法。这个方法同上面的方法类似,不同之处在于,为每个实体类设计一个Collection类。例如,可以为FormDetail设计一个FormDetailsCollection类(C#):

public class FormDetailsCollection: ArrayList
{
public void Add(FormDetail detail)
{
base.Add(detail);
}
public new FormDetail this[int nIndex]
{

共8页 9 7 [1] [2] [3] [4] [5] [6] [7] [88 :>

面向对象的应用服务层设计 相关文章:
面向对象的应用服务层设计 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com