首页 » 网站推广 » 装潢者模式php技巧_php设计模式15装饰器模式

装潢者模式php技巧_php设计模式15装饰器模式

访客 2024-11-08 0

扫一扫用手机浏览

文章目录 [+]

2、UML图

3、PHP代码示例

装潢者模式php技巧_php设计模式15装饰器模式

一、什么是装饰器模式

我们可以利用继续或者组合的办法来扩展一个类的功能,这种办法随着子类的增多以及子类的子类的涌现,导致系统繁芜,代码混乱,而装饰者模式采取继续和引用的办法,减少继续,动态增加类的功能,是一种常用的设计模式。

装潢者模式php技巧_php设计模式15装饰器模式
(图片来自网络侵删)

装饰着模式提高代码的复用性,不必重写已有功能,应对快速和眇小的需求变革,不影响其他代码的运行,只是在代码流中添加一个或者多个\"大众装饰\"大众目标工具的装饰器。

装饰器模式的优点是比较灵巧的处理需求变革,避免在基类中添加太多的功能。
但是,这种模式对开拓者来说提高了难度:调试排错会增加难度。

装饰器模式有以下的角色:

抽象构件(Component)角色:定义接口,用于吸收类新增的功能。

详细构件(Concrete Component)角色:没有装饰过的裸类。

装饰(Decorator)角色:抽象装饰器,用于将详细装饰器调度。

详细装饰(Concrete Decorator)角色:增长装饰浸染。

官方的解释,我们举个例子,大口语阐明一下:

假设我们有一个手机(详细构件),它只能通电话利用。
产品经理哀求你在原手机的根本上增加发短信功能(详细装饰器),你开拓一个发短信的模块,插到原手机上(装饰器),于是现在手机有了发短信功能,卖出的那五个手机通话功能还有,如果要升级购买发短信模块即可。
这时候,产品经理又哀求增加拍照的功能,做法和增加发短信模块一样。
这样所有的手机不用重新制造,都可以利用,只是功能不同。
这便是装饰器模式。

二、UML图

图来源于网上,借用一下。

三、PHP代码示例

代码来源于网上,做了写修正。

装饰器模式代码1

装饰器模式代码2

装饰器模式代码3

运行结果:

手机通话

发短信

手机通话

发短信

拍照

不对之处请各位示正。
喜好就关注我吧。

标签:

相关文章

Python编程从入门到精通,探索编程之美

编程已经成为现代社会的一项基本技能。Python作为一种简单易学、功能强大的编程语言,在我国教育领域备受关注。本文将从Python...

网站推广 2025-03-02 阅读1 评论0

Scum07代码编程之美与适用方法

编程已成为当今社会不可或缺的技能之一。Scum07代码作为一款经典的编程语言,在我国众多程序员中备受推崇。本文将深入解析Scum0...

网站推广 2025-03-02 阅读1 评论0

Linux环境下的前端代码运行优化与步骤

前端技术逐渐成为软件开发的核心。Linux操作系统因其稳定性、安全性、开放性等特点,成为众多开发者和企业青睐的运行环境。本文将从L...

网站推广 2025-03-02 阅读1 评论0