摘要:
业务场景:实现系统数据库的切换,运用抽象工厂模式(Abstract Factory)。首先呢,我们利用工厂方法模式来实现,温习一下工厂方法模式。业务场景条件:数据表:user(id,name); department(id,name);业务场景UML图:思路:1、定义实体类User、Department。2、定义接口IUser、IDepartment,并声明void Insert(User user)、GetUser(int id);void Insert(Department department)、GetDepartment(int id)方法;定义接口IUser、IDepartment用 阅读全文
摘要:
OO(Object–Oriented )面向对象OO方法(Object-Oriented Method,面向对象方法,面向对象的方法)是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,简称OO (Object-Oriented)方法,是建立在“对象”概念基础上的方法学。对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象。而每继承性是对具有层次关系的类的属性和操作进行共享的一种方式。所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制,来认识、理解、刻画客观世界和设计、构建相应的软件系统。UML图例:类+特性(字段 阅读全文
摘要:
在研究完简单工厂模式,从它的优缺点中,我们不难看出:如果我们要新增加一个新的运算方法,我们需要做两步:1、编写新的运算方法;2、去修改OperationFactory类,增加case分支判断;这样一个弊端:同时开放了扩展,而且也开放了修改,违背了开放-封闭原则。从简单工厂模式UML图中我们发现“简单工厂类”是依赖于“运算类”。为了解决这个问题,我们分别为每个运算方法类建立工厂,每个工厂继承于同一接口,这样“简单工厂类”对于“运算类”的依赖,就降低了。这就是工厂方法模式。简单工厂模式的最大优点在于工厂类中包含了必要的逻辑判断,根据客户端的选择动态实例化相关的类,对于客户端来说,去除了与具体产品的 阅读全文