随笔分类 - 设计模式
摘要:这些天看了很多设计模式方面的文章,自己也动手写了一些demo,逐渐感到接口和多态在软件设计中就像陈年老酒,越喝越香。 下面通过一个小例子来说说抽象工厂在实际中的应用。由于是个人心得笔记,写的可能不会很详细,敬请见谅。 在项目中有时会碰到数据库平台迁移的问题,比如从access迁到sql server平台,在代码中完全可以采用抽象工厂实现。首先我们完成access和sql访问数据库的代码。假设数...
阅读全文
摘要:上篇文章写了简单工厂,在需求变化较小的且产品类不多的情况下可以使用简单工厂,但是简单工厂违背了软件设计的开闭原则,即对修改封闭,对扩展开放。当我们添加新的产品时,就必须在工厂类中添加case语句,这显然有不合理的地方——一个类的增加导致另一个类甚至许多个类的修改。让我们来修改一下上篇文章中的工厂类,将工厂写成一个接口。[代码]实例化对象的工作交给了具体工厂来做。[代码][代...
阅读全文
摘要:实例说明:某穷工厂生产汽车零配件,只制作车窗和车门。首先把零部件抽象成一个类Hardware.cs:[代码] 具体产品(车窗和车门)继承自该类,车窗类CarWindows.cs[代码] 车门类CarDoors.cs[代码] 简单工厂的核心类集中了所有的判断逻辑,决定返回什么对象,其中的主要方法一般声明成静态方法,所以又称静态工厂。CarFactory.cs:[代码] 好了,现在可以在客户端测试了。...
阅读全文

浙公网安备 33010602011771号