动手编写三层体系程序小总结

按照《VB高级编程》中的3。3中的例题思想编写的话,存在几个问题,一个是用集合封装记录集来返回给业务去或界面层,性能上及操作上存在问题,该使用只读记录的型式返回。同时,该例子的类对象实例化时机比较混乱,既有在SUB MAIN中实例化,也有在界面层中实例化,同时,在界面层中实例化数据访问层的对象,这样就没有完全遵守分层编码的规范。同时,今天自己尝试编写一个超小型的三层体系小程序有如下的小总结:

分层分类编码可以参考书上的例子,但记录集返回方法可采用只读的记录集返回,而对象实例化的时机应采用一层封装一层的原则进行,也就是说,业务层为了使用数据层的方法而实例化低层的对象,用以完成业务层所要完成的功能。而界面层就只应该实例化业务层对象而不应该实例化数据层的对象,调用业务层对象的方法,由业务层对象简接调用数据层对像的方法完成所要功能,这样做的好处是一层只对一层负责,隔层间不存在关系,但缺点是层与层之间的耦合性太强了。

举个例子来说:如程序要插入一条记录,过程应该是先要打开数据库连接,判断这条记录是否已在数据库中,如果不存在才执行插入记录操作。并且返适当的信息给出用户。

这里比较适当的分层执行及对象实例时机如下:界面层实例化业务层对象,调用插入记录的业务方法,在业务层对象中会实例化一个数据层对象,调用数据层对象的打开数据库方法,然后调用查询记录方法,查询这条记录是否存在在数据库中,如果存在就不再执行任何操作,直执着通知界面层操作失败,如果不存在的话则调用数据层对象的插入数据方法,成功后返回适当信息。这里可以看到界面层不再应该实例化一个数据库对象去执行数据库连接,查询等操作,而只应该实例一个业务层对象,由业务层对象简接做这些数据操作,只需用好业务层提供的方法就行了,同时,业务层对象应该提供足够的功能给界面层使用,数据层同样也应该是这样。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值