工厂(简单工厂模式)
工厂模式
---------------
--优点:
实例化对象,用工厂方法代替new操作。在工厂模式下,bll与dal进行解耦
--工厂模式弊端:
如果有多个DAL,就需要多个工厂,代码相对应更加累赘,所以我
们使用IOC容器(自动控制反转)-----详细见下一博客
--参考代码笔记《专高六CMS--工厂模式--案例运用.net framework MVC通
过访问SqlServer和MySQL两种数据库完成对实现工厂模式的剖解》
1、简单工厂模式
1/1通过添加工厂实现控制反转

1/2 DAL定义一个抽象的产品(接口)
----为了完成bll与dal进行解耦,实现依赖倒置
(程序实现依赖于接口,不依赖于具体实现 即-上层模块不依赖于下层模块,而依赖于抽象 )
《更普通理解:最早电脑鼠标是在电脑上接死的,现在可以通过USB接口更换鼠标》

1/3DAL各个实现类继承接口并实现具体功能
(可以有该商品多种型号---类似多个类继承同样一个接口 )
《更普通解释:不同样式的鼠标插同一个USB接口》
--继承接口这一操作就是官方概念的“依赖倒置”
(面向接口编程 上层模块不依赖于下层模块,而依赖于抽象)

1/4DAL层添加创建工厂
(返回对应dal的new实例操作--类似于在这里抉择要哪个型号的产品)
《更普通理解:这里去选择要用那个鼠标》
--该案例变现是通过切换此处,即可转换为SqlServer库/MySql库(要什么产品)
1/5 工厂模式下 实现bll与dal进行解耦 BLL层通过构造注入依赖
--通过依赖注入 为了实现控制反转,动态将某种依赖关系注入到对象中

1/6 UI层获取工厂返回实例,并将返回的实例给bll
---实现官方概念中的IOC(控制反转) 《 根据工厂要的东西进行生产》

本文来自博客园,作者:じ逐梦,转载请注明原文链接:https://www.cnblogs.com/ZhuMeng-Chao/p/16172075.html

浙公网安备 33010602011771号