位置: 编程技术 - 正文

学习php设计模式 php实现工厂模式(factory)(php设计模型)

编辑:rootadmin

推荐整理分享学习php设计模式 php实现工厂模式(factory)(php设计模型),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php23种设计模式,php常见设计模式和用途,php常用设计模式(大总结),php 设计模式,php23种设计模式,php 设计模式 鸟哥,php 设计模式 鸟哥,php设计模式六大原则,内容如对您有帮助,希望把文章链接给更多的朋友!

学习php设计模式 php实现工厂模式(factory)(php设计模型)

一、意图定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使用一个类的实例化延迟到其子类【GOF】二、工厂模式结构图

三、工厂模式中主要角色抽象产品(Product)角色:具体产品对象共有的父类或接口具体产品(Concrete Product)角色:实现抽象产品角色所定义的接口,并且工厂方法模式所创建的每一个对象都是某具体产品对象的实例抽象工厂(Creator)角色:模式中任何创建对象的工厂类都要实现这个接口,它声明了工厂方法,该方法返回一个Product类型的对象。Creator也可以定义一个工厂方法的缺省实现,它返回一个缺省的的ConcreteProduct对象具体工厂(Concrete Creator)角色:实现抽象工厂接口,具体工厂角色与应用逻辑相关,由应用程序直接调用以创建产品对象。四、工厂模式的优点和缺点工厂模式的优点:工厂方法模式可以允许系统在不修改工厂角色的情况下引进新产品。工厂模式的缺点:客户可能仅仅为了创建一个特定的ConcreteProduct对象,就不得不创建一个Creator子类五、工厂模式适用场景1、当一个类不知道它所必须创建的对象的类的时候2、当一个类希望由它的子类来指定它所创建的对象的时候3、当类将创建对象的职责委托给多个帮助子类的某一个,并且你希望将哪一个帮助子类是代理者这一信息局部化的时候六、工厂模式与其它模式抽象工厂模式(abstract factory模式):Abstract Factory模式经常使用工厂方法来实现Template Method模式: 工厂方法通常在Template Methods中被调用七、工厂模式PHP示例

八、区分工厂方法模式与简单工厂模式工厂方法模式与简单工厂模式再结构上的不同不是很明显。工厂方法类的核心是一个抽象工厂类,而简单工厂模式把核心放在一个具体类上。工厂方法模式之所以有一个别名叫多态性工厂模式是因为具体工厂类都有共同的接口,或者有共同的抽象父类。当系统扩展需要添加新的产品对象时,仅仅需要添加一个具体对象以及一个具体工厂对象,原有工厂对象不需要进行任何修改,也不需要修改客户端,很好的符合了”开放-封闭”原则。而简单工厂模式在添加新产品对象后不得不修改工厂方法,扩展性不好。工厂方法模式退化后可以演变成简单工厂模式。

标签: php设计模型

本文链接地址:https://www.jiuchutong.com/biancheng/281547.html 转载请保留说明!

上一篇:学习php设计模式 php实现原型模式(prototype)(php 设计模式 鸟哥)

下一篇:学习php设计模式 php实现适配器模式(php 设计模式 鸟哥)

  • 怎么知道交不交印花税
  • 计税基础怎么算
  • 计提应收的增值税返还
  • 新会计准则下长期股权投资的变化
  • 承包费收入如何做账
  • 增值税专用发票电子版
  • 企业所得税汇算清缴退税账务处理
  • 财税〔2017〕39号商业健康保险个人所得税
  • 保险公司退还保费
  • 企业会计准则制度
  • 印花税分配比例
  • 房地产开发企业资质证书
  • 公司破产清算的清偿顺序为
  • i7笔记本cpu性能天梯图
  • win10如何禁用administrator用户
  • 企业收到财政资金
  • 进项发票没认证可以开红字申请单吗
  • windows11怎么设置默认应用
  • 怎么获得2021
  • 公对公如何转账不用开票
  • groove.exe是什么
  • 债券溢价或折价是公司发行债券时产生的收益或损失
  • 收到过期银行汇票怎么办
  • 魅族路由器mini padavan
  • php出栈函数
  • 阿里云jar包
  • 向农户收购农产品怎么打款
  • php domdocument
  • 安全费用的适用范围
  • 分包缴纳的个税怎么算
  • 什么是长期应付票据
  • open api平台
  • 猿猴的作文
  • vnc viewer连接windows
  • 建筑企业异地预缴增值税计算
  • 员工聚餐谁出钱
  • mysql是自动提交的吗
  • 进项发票抵扣税率
  • 一般纳税人购入不动产增值税税率
  • 增值税普票税额可以抵扣税吗
  • 股东收到投资收益会计科目
  • 服务费开增值税专用发票
  • 只有进项税月末要转入未交增值税么
  • 广告牌制作加盟厂家
  • 预缴土地增值税税率表2023年最新
  • 非公司人员差旅怎么报销
  • 减免税额月底怎么结转
  • 合并资产负债表少数股东权益怎么计算
  • 收到客户账款会计分录
  • 旅游业差额开票的票据可以累计一季度吗
  • 利息收入记借方还是贷方
  • 机票 进项抵扣
  • csv数据量太大怎么拆分
  • mysql could not be resolved: Name or service not known
  • mac移动硬盘不能拷贝
  • macu盘安装windows
  • windows7怎
  • win7旗舰版怎么改成专业版
  • windows7升级到win8
  • win8系统如何恢复出厂设置
  • win8系统停止服务
  • win8怎样设置禁止弹出广告
  • w10文件预览
  • ExtJS如何设置与获取radio控件的选取状态
  • window系统设置
  • cad cl命令在哪里
  • css网页布局在线生成
  • css中如何设置图片大小
  • tbc背包插件
  • sql命令语句
  • pythonista pygame
  • python编写下载器
  • node.js的内置模块
  • JavaScript中getUTCMinutes()方法的使用详解
  • python文件的读操作方法
  • android 获取手机屏幕截图
  • 网上怎么交车船税
  • 非贸付汇代扣代缴增值税可以抵扣吗
  • 非房地产企业土地增值税清算
  • 地方公安局归谁管
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设