摘要:1.工厂的目的:使用一个变化频率比较高的类不必忙着new(),而要依赖一个抽象的类型(抽象类或接口)。使用工厂的动机主要来自“变化“。2.频繁的获取、抛弃抽象类型实例会有资源浪费的问题,有以下解决方法: a.把工厂实例作为参数注入到操作中; b.把工厂设计成singleton方式; c.使用静态类。3.工厂方法的使用场景: a.客户程序需要隔离它与需要创建的具体类型间的耦合关系; b.无法预知要创建的类型; c.将创建工作隔离在客户程序之外,客户程序仅需要执行自己的业务逻辑,把这部分职责交给外部对象完成; d.目标对象的继承关系比较复杂。
阅读全文
摘要:做一个项目之前需要想些什么呢? 回想起自己之前的经历,要做一个东西,简单的分析了下需求,就开始了忙活。做的过程中,遇到了这样那样的问题,全局变量啊,配置啊,测试啊,相同的东西改来改去,最后做出一个乱七八糟的东西。直到看过一本书才有了些启发,原来该这样做。 1.善用反射 几乎所有语言都实现了反射机制,它的意义在于实现动态对象创建。 2.如何创建对象 因为反射的出现,传统的对象的构造函数类似的东东需要进一步优化,包括类型的动态识别,参数的可配等等,所以C#有了objectBuilder,其他语言还不清楚。 3.配置文件 配置,扩展,程序开发的基础。所以开始做一个...
阅读全文