说道设计模式,那就说说什么是设计模式:
设计模式(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