工厂设计模式

如果没有工厂设计模式,可能会出现以下的问题


ITaskDAO接口和TaskDAOImpl实现类,实现类是可能会更改的,那么,如果就使用普通的方式来创建DAO,比如

ITaskDAO taskDAO = new TaskDAOImpl(),那么后续,如果你的TaskDAO的实现类变更了,那么你就必须在你的程序中,所有出现过TaskDAOImpl的地方,去更换掉这个实现类,这是非常非常麻烦的。


如果说,你的TaskDAOImpl这个类,在你的程序中出现了100次,那么你就需要修改100个地方,这对程序维护是一场灾难


这时就有工厂设计模式


对于一些种类的对象,使用一个工厂,来提供这些对象创建的方式,外界要使用某个类型的对象时,就直接通过工厂来获取即可,不用自己手动一个一个地方的去创建对应的对象,那么加入,我们有100个地方用到了TaskDAOImpl,不需要去在100个地方都创建TaskDAOImpl(),只要使用TaskFactory.getTaskDAO()方法,获取出来ITaskDAO接口对象即可。

如果后面,比如说Mysql迁移到Oracle,我们重新开发了一套TaskDAOImpl实现类,那么就直接在工厂方法中,更换掉这个类即可,不需要在对所有的地方都做改变

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值