关闭

php-设计模式--适配器模式

标签: php设计模式经验
284人阅读 评论(0) 收藏 举报

说道设计模式,那就说说什么是设计模式:

设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。(官方的说法。。嘿嘿),下面说说我的理解吧,设计模式,可以理解为一种架构,就是前人搭出来的,经过反复实践过的一种架构,这种架构在代码中可以方便管理和复用,会让代码变得更简洁,看起来更舒服,会避免一段代码在程序中多次出现。虽然在搭建的时候很麻烦,但是当你后期维护或者增加新功能的时候你会非常庆幸当初选择了设计模式

这就工作一两年和学校立刚出来的人写代码的区别所在,代码一个横向发展,一个纵向发展。

下面说说,设计模式中的适配器模式。

23种设计模式,为什么只说适配器模式呢?因为是最近学到的,也是最近用到的,最关键的是,最近有时间。。

适配器模式:在计算机编程中,适配器模式(有时候也称包装样式或者包装)将一个类的接口适配成用户所期待的。一个适配允许通常因为接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。(这也是官方说法,尊重一下,,);就是就几个类中共通的地方,业务逻辑相近的但又不完全相同的代码提出来放到一个公共类中,供大家一同调用,各自做具体实现,这样,当业务逻辑改变(常事儿)时,就不用挨个改一遍。

适配器模式分

  对象适配器模式
    -- 在这种适配器模式中,适配器容纳一个它包裹的类的实例。在这种情况下,适配器调用被包裹对象的物理实体。
  类适配器模式
    -- 这种适配器模式下,适配器继承自已实现的类(一般多重继承)。
在实际工作中的类类适配器模式用的会多一些,所下面说的便是类适配器模式

下面举例说明:
Test.php----------------------Interface
<?php
Interface TestInterface
{
 //在这里规定所有使用这个接口的类,都必须具备下面的方法
    public function notify();
    public function send();
}
?>
BaseTest.php-----------------------Adaptee
<?php
(abstract) class BaseTest implements TestInterface{
/**实现TestInterface,在这里存放一些公用逻辑,公用方法;比如在这里写记录错误日志的方法,传不同的参数,记录不同的日志,(注意前面的abstract)*/
}
?>
test_1.php-----------------------------Adapter
<?php
class test_1 extends BaseTest{
//test_1就是子类(适配器),继承自BaseTest类
}
?>
这只是类适配器模式,对象适配器模式,下次再说吧,最后引用提示一下(劲酒虽好,可不要贪杯哦~~)

http://blog.csdn.net/lcl_data/article/details/8780140 推荐一篇文章,也是博主关于适配器模式的理解,挺好的

粗略的就说道这里,如果有什么不对的地方,欢迎来邮指正,邮箱  linguoyu0918@163.com


0
0
查看评论

Java设计模式----适配器模式

1. 适配器模式简介      适配器模式(Adapter):将一个类的接口转换成客户希望的另外一个接口。Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。      适用场景: ...
  • ymeng_bupt
  • ymeng_bupt
  • 2011-09-29 12:42
  • 9502

大话设计模式—适配器模式

适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入笔...
  • lmb55
  • lmb55
  • 2016-03-29 19:47
  • 1777

JAVA设计模式初探之适配器模式

1. 概述   将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。 2. 解决的问题   即Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。     ...
  • jason0539
  • jason0539
  • 2014-03-29 07:53
  • 45904

java 设计模式-----适配器模式

现实中的问题 有一个插座,这个插座是三个口的,但是我们手上只有两个触角的插头,一种笨方法就是直接强行把两个触角掰弯,插进去(这种事情我就做过),还有一种方法就是找一个转换头来。 看下面一张图就大概明白了,很明显现有系统很难和厂商提供的匹配,该怎么做呢?那么适配器这...
  • yujin753
  • yujin753
  • 2015-05-31 12:12
  • 1258

设计模式——适配器模式 Java源代码

适配器模式,《Head First Design Patterns》给的代码的例子是关于鸭子和火鸡,然而鸭子和火鸡离日常生活比较远。这次,我改编了实验楼网站上面的例子,关于插座和充电器。
  • u013390476
  • u013390476
  • 2016-01-01 16:02
  • 2581

设计模式之适配器模式(adaptor pattern)

1 适配器模式的定义在设计模式中,适配器模式(英语:adapter pattern)有时候也称包装样式或者包装(wrapper)。将一个类的接口转接成用户所期待的。一个适配使得因接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。2 实际应用中的例子 比如我们去日本...
  • suifeng3051
  • suifeng3051
  • 2016-05-25 11:32
  • 3011

设计模式-适配器模式(Go语言描述)

在上一篇博客设计模式-策略模式(Go语言描述)中我们用最简单的代码用go语言描述了 设计模式中的策略模式,用最简单的实例来描述相信可以让初学者可以很轻松的掌握各种设计模式。继上篇博客,我们接着用同样简单的代码来了解一下适配器模式。适配器模式介绍说起适配器模式,相信很多做android的同学第一印象...
  • qibin0506
  • qibin0506
  • 2016-01-28 08:56
  • 6369

设计模式php实例:适配器模式

适配器模式将一个类的换成客户端需要的另一个接口,使原本不兼容的接口能一起工作。一个现实中的例子,假如屋里墙上只有两项插口,而风扇有三个插头,这时需要再拿一个移动插线板,插线板接入墙壁插口的一段是两项插头,插线板另外一段能够提供三项插口给风扇,这时候插线板起到了一个适配器的作用。 在应用中,适配器模...
  • wzllai
  • wzllai
  • 2012-08-05 19:54
  • 3112

大话设计模式——适配器模式

宏观导图 细节展示  结构图:  关键代码: 对比学习  重构统一接口VS适配器 小结
  • u011500356
  • u011500356
  • 2015-01-06 11:19
  • 1146

设计模式(二) 三种适配器模式 总结和使用场景

转载请标明出处: http://blog.csdn.net/zxt0601/article/details/52703280本文出自:【张旭童的博客】一 概述定义:适配器模式将某个类的接口转换成客户端期望的另一个接口表示,主的目的是兼容性,让原本因接口不匹配不能一起工作的两个类可以协同工作。其别...
  • zxt0601
  • zxt0601
  • 2016-10-18 16:34
  • 4182
    个人资料
    • 访问:49093次
    • 积分:745
    • 等级:
    • 排名:千里之外
    • 原创:21篇
    • 转载:17篇
    • 译文:1篇
    • 评论:24条
    文章分类
    最新评论