关于策略模式的应用的思考

这两天做数据访问组件,经过不断的修改与改进终于功能将要完成最后的代码复查工作,在检查的过程中发现这样一个问题,组件中有一个IDbContext的接口专门用于处理与数据库相关的内容,主要处理生成参数名啊,属性数据向数据库数据转换,数据库数据向属性转换等方面的职务.在其它委多类中都需要使用,很多的类都需要这个信息来生成其它相关的内容.对于些类可能有两种方式来设置相关的IDbContext对象,一种方式是构造时以参数的形式输入,一种是以继承的方式在子类的为这些类创建IDbContext对象,两种方式都能够实现.先分别来看一下两种方式的优势与不足:
   构造参数指定的方式:这种方式最大的好处是可以减少子类的数量,减少维护的难度,不足是需要使用者对代码的设计等方面有深入的了解.增加使用难度.
 在子孙万代类的创建:这种方式最大的好处是可以在使用是直接建立对的对象,减少在抽象层次上的理解等,使用比较方便.不足之处是会大量的增加子类的数量.
 我在进行代码的重构过程中,将通过对应IDbContext对象就能够生成对应信息,并且这个类对于不同数据库修改的可能性都很少的,我使用以构造参数的形式指定.而对于用户可能会直接创建的对象,并且这个对象针对不同数据库重写的可能性很高的,则以子类中创建.
 也不知道这样的设计是否能够很好的处理这个问题.

转载于:https://www.cnblogs.com/jeffwoot/archive/2008/02/19/1074171.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值