E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
php设计模式
PHP设计模式
学习笔记: 责任链模式(Chain of Responsibility)
//抽象书本类 abstractclassAbstractBookTopic{ abstractfunctiongetTopic(); abstractfunctiongetTitle(); abstractfunctionsetTitle($title_in); } //书本类,继承自抽象书本类 classBookTopicextendsAbstractBookTopic{ private$t
Brox
·
2014-07-11 12:00
PHP设计模式
学习笔记: 命令模式(Command)
//书本信息操纵类,包括书本的所有操作命令的方法 classBookCommandee{ private$author; private$title; function__construct($title_in,$author_in){ $this->setAuthor($author_in); $this->setTitle($title_in); } functiongetAuthor(){
Brox
·
2014-07-10 14:00
PHP设计模式
学习笔记: 观察者模式
//抽象的观察者类,规定要有一个update方法 abstractclassAbstractObserver{ abstractfunctionupdate(AbstractSubject$subject_in); } //抽象的主题类 abstractclassAbstractSubject{ abstractfunctionattach(AbstractObserver$observer_i
Brox
·
2014-07-10 14:00
PHP设计模式
学习笔记: 备忘录模式(Memento)
//阅读器类 classBookReader{ private$title; private$page; function__construct($title_in,$page_in){ $this->setPage($page_in); $this->setTitle($title_in); } publicfunctionge
Brox
·
2014-07-10 13:00
PHP设计模式
学习笔记: 策略模式
//策略生成器(有点相当于工厂) classStrategyContext{ private$strategy=NULL; //bookListisnotinstantiatedatconstructtime publicfunction__construct($strategy_ind_id){ switch($strategy_ind_id){ case"Makeupper": $this->
Brox
·
2014-07-09 12:00
PHP设计模式
学习笔记: 享元模式(flyweight)
不知道为什么把flyweight翻译成享元,还有一般的应用场景在哪里?数据库?那跟单例模式比较呢?//享元的书对象 classFlyweightBook{ private$author; private$title; function__construct($author_in,$title_in){ $this->author=$author_in; $this->title=$title_in
Brox
·
2014-07-09 11:00
PHP设计模式
学习笔记: 模版方法
翻译: http://sourcemaking.com/design_patterns/template_methodhttp://sourcemaking.com/design_patterns/template_method/phpabstractclassTemplateAbstract{ publicfinalfunctionshowBookTitleInfo($book_in){ $ti
Brox
·
2014-07-02 14:00
PHP-设计模式-单例模式
php /** *
PHP设计模式
-单例模式 * @author chengtao3 */ class Singleton{ private static $Instance = null; /*
chengtao1633
·
2014-06-27 11:49
数据库
PHP
连接
PHP-设计模式-单例模式
php/** *
PHP设计模式
-单例模式 * @author chengtao3 */class Singleton{private static $Instance = null;/** * 公共静态方法获取实例
我也逗你玩
·
2014-06-27 11:49
php
数据库
连接
PHP
php设计模式
小结(转)
1、单例模式所谓单例模式,也就是在任何时候,应用程序中只会有这个类的一个实例存在。常见的,我们用到单例模式只让一个对象去访问数据库,从而防止打开多个数据库连接。要实现一个单例类应包括以下几点:和普通类不同,单例类不能被直接实例化,只能是由自身实例化。因此,要获得这样的限制效果,构造函数必须标记为private。 要让单例类不被直接实例化而能起到作用,就必须为其提供这样的一个实例。因此,就必须要让单
太阳黑子
·
2014-06-25 15:00
Php设计模式
(三):行为型模式 part 2
5、中介者模式(Mediator): 用中介对象封装一系列的对象交互,中介使各对象不需要显式地相互引用。类似于邮局,邮寄者和收件者不用自己跑很远路,通过邮局就可以。 好处:简化了对象之间的关系,减少子类的生成 弊端:中介对象可能变得非常复杂,系统难以维护 应用场景:不需要显示地建立交互代码实现:_mediator = $mediator; } pu
ucaicn
·
2014-06-19 18:30
设计模式
PHP
行为模式
Php设计模式
(三):行为型模式 part1
在上一篇我们讲了结构型模式,结构型模式是讨论类和对象的结构的。总共有7种。而今天我们来介绍一下行为型模式。一、什么是行为型模式?行为型模式: 就是描述类和对象之间的通信和职责的。简而言之,就是类和对象扮演什么角色,还有怎么扮演这个角色的问题。二、行为型模式的种类 大体上分为三个大类:常见模式、已知模式、深度模式 常见模式包括:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、
ucaicn
·
2014-06-19 17:00
设计模式
PHP
行为模式
php设计模式
(二):结构型模式
上一篇我们介绍了设计模式的特性并且详细讲解了4种创建型模式,创建型模式是负责如何产生对象实例的,现在我们继续来给大家介绍结构型模式。 一、什么是结构型模式? 结构型模式是解析类和对象的内部结构和外部组合,通过优化程序结构解决模块之间的耦合问题。结构型模式的种类:适配器模式桥接模式装饰模式组合模式外观模式享元模式代理模式1、适配器模式(Adapter) 将一个类的接口转换成客户希望的另一个
ucaicn
·
2014-06-18 18:59
设计模式
PHP
结构型模式
php设计模式
(一):简介及创建型模式
我们分三篇文章来总结一下设计模式在PHP中的应用,这是第一篇创建型模式。 一、设计模式简介:首先我们来认识一下什么是设计模式:设计模式是一套被反复使用、容易被他人理解的、可靠的代码设计经验的总结。设计模式不是Java的专利,我们用面向对象的方法在PHP里也能很好的使用23种设计模式。那么我们常说的架构、框架和设计模式有什么关系呢?架构是一套体系结构,是项目的整体解决方案;框架是可供复用的半成品软件
ucaicn
·
2014-06-18 17:28
设计模式
PHP
创建型模式
php设计模式
(一):简介及创建型模式
我们分三篇文章来总结一下设计模式在PHP中的应用,这是第一篇创建型模式。一、设计模式简介:首先我们来认识一下什么是设计模式:设计模式是一套被反复使用、容易被他人理解的、可靠的代码设计经验的总结。设计模式不是Java的专利,我们用面向对象的方法在PHP里也能很好的使用23种设计模式。那么我们常说的架构、框架和设计模式有什么关系呢?架构是一套体系结构,是项目的整体解决方案;框架是可供复用的半成品软件,
ucaicn
·
2014-06-18 17:28
php
设计模式
创建型模式
委托者模式和策略模式的区别
看《
PHP设计模式
》这本书,里面写到委托模式和策略模式,我翻来覆去的看,从代码上看它们是一种东西,至少实现的原理是一样的。
吾爱
·
2014-05-20 23:00
PHP
Php设计模式
:行为型模式(三)
原文详见:http://www.ucai.cn/blogdetail/7023?mid=1&f=12 可以在线运行查看效果哦! <接上一篇> 7、职责链模式 (Chainof Responsibility): 多个对象有机会处理请求,为请求发送者和
cyber4cn
·
2014-05-19 17:00
设计模式
PHP
Php设计模式
:行为型模式(二)
原文详见:http://www.ucai.cn/blogdetail/7023?mid=1&f=12可以在线运行查看效果哦! 4、观察者模式(Observer): 又叫发布订阅模式,当一个主体对象发生改变时,依赖它的多个观察者对象都得到通知并自动更新响应。就像报社一样,今天发布的消息只要是看这份报纸的人看到的都是同样的内容。如果发布另一份报纸,也是一样的。 好处:广播式通
cyber4cn
·
2014-05-19 17:00
设计模式
PHP
Php设计模式
:行为型模式(一)
原文详见:http://www.ucai.cn/blogdetail/7023?mid=1&f=12 可以在线运行查看效果哦! 在上一篇我们讲了结构型模式,结构型模式是讨论类和对象的结构的。总共有7种。而今天我们来介绍一下行为型模式。 一、什么是行为型模式? 行为型模式:
cyber4cn
·
2014-05-19 16:00
PHP
php模型
设计模型
Php设计模式
:行为型模式(三)
原文详见:http://www.ucai.cn/blogdetail/7023?mid=1&f=5可以在线运行查看效果哦! 7、职责链模式(ChainofResponsibility): 多个对象有机会处理请求,为请求发送者和接收者解耦。就像银行里的取款机,不管那一台都可以取到钱。 好处:简单化对象隐藏链结构,便于添加新职责节点。 弊端:请求可能没有接受者,或者被多个接收
bianbiancheng
·
2014-05-19 15:00
设计模式
PHP
PHP
模式
对象
应用
Php设计模式
:行为型模式(二)
原文详见:http://www.ucai.cn/blogdetail/7023?mid=1&f=5 可以在线运行查看效果哦! 4、观察者模式(Observer): 又叫发布订阅模式,当一个主体对象发生改变时,依赖它的多个观察者对象都得到通知并自动更新响应。就像报社一样,今天发布的消息只要是看这份报纸的人看到的都是同样的内容。如果发布另一份报纸,也是一样的。 好处:广播式通信
bianbiancheng
·
2014-05-19 14:00
设计模式
PHP
PHP
模式
实例
应用
Php设计模式
:行为型模式(一)
原文详见:http://www.ucai.cn/blogdetail/7023?mid=1&f=5 可以在线运行查看效果哦! 在上一篇我们讲了结构型模式,结构型模式是讨论类和对象的结构的。总共有7种。而今天我们来介绍一下行为型模式。一、什么是行为型模式?行为型模式: 就是描述类和对象之间的通信和职责的。简而言之,就是类和对象扮演什么角色,还有怎么扮演这个
bianbiancheng
·
2014-05-19 14:00
PHP
PHP
模式
优才公开课笔记:
php设计模式
(五)之适配器模式(Adapter)
前几篇介绍了设计模式的特性并且详细讲解了4种创建型模式,创建型模式是负责如何产生对象实例的,接下来讲讲结构型模式。一、什么是结构型模式?结构型模式是解析类和对象的内部结构和外部组合,通过优化程序结构解决模块之间的耦合问题。二、结构型模式的种类:适配器模式桥接模式装饰模式组合模式外观模式享元模式代理模式1、适配器模式(Adapter)将一个类的接口转换成客户希望的另一个接口,适配器模式使得原本的由于
张友林
·
2014-05-19 00:00
优才网
适配器
设计模式
公开课
php设计模式
(二):结构型模式
原文请见 http://www.ucai.cn/blogdetail/7020?action=gt&mid=1 可以在线运行查看效果哦! 上一篇我们介绍了设计模式的特
cyber4cn
·
2014-05-14 16:00
设计模式
PHP
php设计模式
(二):结构型模式
原文请见 http://www.ucai.cn/blogdetail/7020?action=gt&mid=1 可以在线运行查看效果哦! 上一篇我们介绍了设计模式的特性并且详细讲解了4种创建型模式,创建型模式是负责如何产生对象实例的,现在我们继续来给大家介绍结构型模式。 一、什么是结构型模式? 结构型模式是解析类和对象的内部结构和外部组合,通过优化程序结构解决模
bianbiancheng
·
2014-05-14 16:00
设计模式
PHP
模式
PHP
php设计模式
(一):简介及创建型模式
原文请见: http://www.ucai.cn/blogdetail/7020?mid=1&f=12 可以在线运行查看效果哦! 我们分三篇文章来总结一下设计模式在PHP中的应用,这是第一篇创建型模式。 一、设计模式简介 首先我们来认识一下什么是设计模式: 设计模式是一套被反复使用、容易被他人理解的、可靠的代码设计经验的总结。 设计模式不是Ja
cyber4cn
·
2014-05-12 18:00
php 设计模式 全栈工程师
php设计模式
(一):简介及创建型模式——优才网公开课
原文请见:http1&://www.ucai.cn/blogdetail/7020?mid=1&f=12d=f=5可以在线运行查看效果哦!我们分三篇文章来总结一下设计模式在PHP中的应用,这是第一篇创建型模式。 一、 设计模式简介:首先我们来认识一下什么是设计模式:设计模式是一套被反复使用、容易被他人理解的、可靠的代码设计经验的总结。设计模式不是Java的专利,我们用面向对象的方法在P
bianbiancheng
·
2014-05-12 18:00
设计模式
PHP
PHP设计模式
之备忘模式
1、NortonGhost的方便与问题我们大多数win的用户都用过NortonGhost,只要将目前系统备份一下生成镜像文件,等系统中毒或崩溃的时候,用NortonGhost恢复一下就回到备份时候的样子了。这个可以说就是备忘(Memento)模式的基本原理了,先备份,需要的时候恢复。因此备忘模式是比较好理解的。但在实际应用中,如何正确的应用备忘模式,是需要注意的。难道我们在word写文章的时候,先
m22543
·
2014-05-08 18:48
开发
服务器
文章
实际应用
系统备份
PHP设计模式
之备忘模式
1、NortonGhost的方便与问题我们大多数win的用户都用过NortonGhost,只要将目前系统备份一下生成镜像文件,等系统中毒或崩溃的时候,用NortonGhost恢复一下就回到备份时候的样子了。这个可以说就是备忘(Memento)模式的基本原理了,先备份,需要的时候恢复。因此备忘模式是比较好理解的。但在实际应用中,如何正确的应用备忘模式,是需要注意的。难道我们在word写文章的时候,先
m22543
·
2014-05-08 18:48
服务器
文章
开发
PHP设计模式
之适配器模式
index.phpwrite(); //【主要角色】 //目标(Target)角色:定义客户端使用的与特定领域相关的接口,这也就是我们所期待得到的 //源(Adaptee)角色:需要进行适配的接口 //适配器(Adapter)角色:对Adaptee的接口与Target接口进行适配;适配器是本模式的核心,适配器把源接口转换成目标接口,此角色为具体类 //使用场景 //1、你想使用一个已经存在的类,而
3147972
·
2014-05-04 22:35
php设计模式
PHP适配器模式
PHP设计模式
之适配器模式
index.phpwrite();//【主要角色】//目标(Target)角色:定义客户端使用的与特定领域相关的接口,这也就是我们所期待得到的//源(Adaptee)角色:需要进行适配的接口//适配器(Adapter)角色:对Adaptee的接口与Target接口进行适配;适配器是本模式的核心,适配器把源接口转换成目标接口,此角色为具体类//使用场景//1、你想使用一个已经存在的类,而它的接口不符
AndyMac
·
2014-05-04 22:35
PHP设计模式
PHP适配器模式
PHP
php 设计模式
php设计模式
1.单例模式 单例模式顾名思义,就是只有一个实例。作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。
得尼玛逼
·
2014-04-22 16:00
PHP设计模式
之观察者模式(Observer)详细介绍和代码实例
【意图】定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新【GOF95】又称为发布-订阅(Publish-Subscribe)模式、模型-视图(Model-View)模式、源-监听(Source-Listener)模式、或从属者(Dependents)模式【观察者模式结构图】【观察者模式中主要角色】1.抽象主题(Subject)角色:主题角色将所
·
2014-04-08 17:00
php设计模式
总结-工厂模式
使用工厂模式的目的或目标?工厂模式的最大优点在于创建对象上面,就是把创建对象的过程封装起来,这样随时可以产生一个新的对象。减少代码进行复制粘帖,耦合关系重,牵一发动其他部分代码。通俗的说,以前创建一个对象要使用new,现在把这个过程封装起来了。假设不使用工厂模式:那么很多地方调用类a,代码就会这样子创建一个实例:new a(),假设某天需要把a类的名称修改,意味着很多调用的代码都要修改。工厂模式的
·
2014-03-11 19:00
设计模式
php设计模式
总结-单件模式
一、单件模式英文叫做sington。其他语言中有叫做单例模式,其实都是一样的道理。保证只会出现单个实例,所以是单例。翻译成单件,永远只会产生一件,呵呵。 还有翻译成单元素模式。其实关键是看这个英文比较好。英文是sington,统一是使用这个单词。 单件模式的目的我理解如下:避免重复创建(实例化)对象,已经有现成的实例就用现成的。减少资源的浪费(因为创建多个实例,浪费内存,完全没必要),单件模式
·
2014-03-11 19:00
设计模式
五种常见的 PHP 设计模式
五种常见的
PHP设计模式
设计模式只是为Java™架构师准备的——至少您可能一直这样认为。实际上,设计模式对于每个人都非常有用。如果这些工具不是“架构太空人”的专利,那么它们又是什么?
qq1355541448
·
2014-03-06 11:00
设计模式
PHP
php设计模式
之命令模式
php设计模式
之命令模式使用示例,命令模式将一个请求封装为一个对象,从而你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销操作。
mysoftsky
·
2014-03-02 20:00
php设计模式
之命令模式使用示例
命令类:1.命令角色:声明了一个给所有具体命令类的抽象接口。这是一个抽象角色。2.具体命令角色:定义一个接受者和行为之间的弱耦合;实现execute方法,负责调用接受的相应操作。execute()方法通常叫做执行方法3.客户角色:创建一个具体命令对象并确定其接受者。4.请求者角色:负责调用命令对象执行请求,相关的方法叫做行动方法。5.接受者角色:负责具体实施和执行一个请求。作用:1.抽象出待执行的
·
2014-03-02 14:24
php设计模式
之单例模式使用示例
以下为单例模式代码:复制代码代码如下:/**1.第一步:*既然是单例,也就是只能实例化一次,也就代表在实例化时*不可能使用new关键字!!!!*在使用new关键字时,类中的构造函数将自动调用。*但是,如果我们将构造函数的访问控制符设置为protected或private*那么就不可能直接使用new关键字了!!!*第二步:*无论protected/private修饰的属性或方法,请问在当前类的*内部
·
2014-01-20 15:33
PHP设计模式
(7)代理模式
PHP设计模式
中的代理模式(Proxy),它是对简单处理程序(或指针)的增强,用于引用一个对象:这个指针被代理(Proxy)对象取代,代理对象位于客户端(Client)和真实执行程序之间,指针有一个可被多个目标利用的钩子
shayang88
·
2013-12-28 23:04
设计模式
PHP
代理模式
PHP设计模式
(7)代理模式
PHP设计模式
中的代理模式(Proxy),它是对简单处理程序(或指针)的增强,用于引用一个对象:这个指针被代理(Proxy)对象取代,代理对象位于客户端(Client)和真实执行程序之间,指针有一个可被多个目标利用的钩子
shayang88
·
2013-12-28 23:04
PHP
设计模式
代理模式
PHP
PHP设计模式
(6)迭代器模式
迭代器(Iterator)模式,在一个很常见的过程上提供了一个抽象:位于对象图不明部分的一组对象(或标量)集合上的迭代。迭代有几种不同的具体执行方法:在数组属性,集合对象,数组,甚至一个查询结果集之上迭代。在PHP官方手册中可以找到完整的SPL迭代器列表。得益于对PHP的强力支持,使用迭代器模式的大部分工作都包括在标准实现中,下面的代码示例就利用了标准Iterator的功能。_content=$c
shayang88
·
2013-12-25 21:12
PHP
设计模式
迭代器模式
PHP
PHP设计模式
(6)迭代器模式
迭代器(Iterator)模式,在一个很常见的过程上提供了一个抽象:位于对象图不明部分的一组对象(或标量)集合上的迭代。迭代有几种不同的具体执行方法:在数组属性,集合对象,数组,甚至一个查询结果集之上迭代。在PHP官方手册中可以找到完整的SPL迭代器列表。得益于对PHP的强力支持,使用迭代器模式的大部分工作都包括在标准实现中,下面的代码示例就利用了标准Iterator的功能。_content=$c
shayang88
·
2013-12-25 21:12
设计模式
PHP
迭代器模式
PHP设计模式
(5)策略模式
在此模式中,算法是从复杂类提取的,因而可以方便地替换。例如,如果要更改搜索引擎中排列页的方法,则策略模式是一个不错的选择。思考一下搜索引擎的几个部分――一部分遍历页面,一部分对每页排列,另一部分基于排列的结果排序。在复杂的示例中,这些部分都在同一个类中。通过使用策略模式,您可将排列部分放入另一个类中,以便更改页排列的方式,而不影响搜索引擎的其余代码。作为一个较简单的示例,清单显示了一个用户列表类,
shayang88
·
2013-12-23 21:05
设计模式
PHP
策略
PHP设计模式
(5)策略模式
在此模式中,算法是从复杂类提取的,因而可以方便地替换。例如,如果要更改搜索引擎中排列页的方法,则策略模式是一个不错的选择。思考一下搜索引擎的几个部分——一部分遍历页面,一部分对每页排列,另一部分基于排列的结果排序。在复杂的示例中,这些部分都在同一个类中。通过使用策略模式,您可将排列部分放入另一个类中,以便更改页排列的方式,而不影响搜索引擎的其余代码。作为一个较简单的示例,清单显示了一个用户列表类,
shayang88
·
2013-12-23 21:05
PHP
设计模式
策略
PHP
计算机学科漫谈
推荐博文:
PHP设计模式
之观察者模式在这篇博文里,我想和大家聊一聊自己对计算机学科的理解。当下本科阶段的计算机专业教学涉及计算机学科的方方面面,分类繁杂,有时可能令新人茫然不知所措。
乌鸟heart
·
2013-12-22 04:00
计算机
学科
PHP设计模式
(4)命令链模式
命令链 模式以松散耦合主题为基础,发送消息、命令和请求,或通过一组处理程序发送任意内容。每个处理程序都会自行判断自己能否处理请求。如果可以,该请求被处理,进程停止。您可以为系统添加或移除处理程序,而不影响其他处理程序。以下代码显示了此模式的一个示例。_commands[]=$cmd; } //定义执行命令的方法 publicfunctionrunCommand($name,$args){ fore
shayang88
·
2013-12-21 21:09
设计模式
PHP
命令链
PHP设计模式
(4)命令链模式
命令链模式以松散耦合主题为基础,发送消息、命令和请求,或通过一组处理程序发送任意内容。每个处理程序都会自行判断自己能否处理请求。如果可以,该请求被处理,进程停止。您可以为系统添加或移除处理程序,而不影响其他处理程序。以下代码显示了此模式的一个示例。_commands[]=$cmd;}//定义执行命令的方法publicfunctionrunCommand($name,$args){foreach($
shayang88
·
2013-12-21 21:09
PHP
设计模式
命令链
PHP
PHP设计模式
(3)观察者模式
观察者模式为您提供了避免组件之间紧密耦合的另一种方法。该模式非常简单:一个对象通过添加一个方法(该方法允许另一个对象,即观察者注册自己)使本身变得可观察。当可观察的对象更改时,它会将消息发送到已注册的观察者。这些观察者使用该信息执行的操作与可观察的对象无关。结果是对象可以相互对话,而不必了解原因。一个简单示例是系统中的用户列表。下面的代码显示一个用户列表,添加用户时,它将发送出一条消息。添加用户时
shayang88
·
2013-12-20 23:09
设计模式
PHP
Web
观察者
PHP设计模式
(3)观察者模式
观察者模式为您提供了避免组件之间紧密耦合的另一种方法。该模式非常简单:一个对象通过添加一个方法(该方法允许另一个对象,即观察者注册自己)使本身变得可观察。当可观察的对象更改时,它会将消息发送到已注册的观察者。这些观察者使用该信息执行的操作与可观察的对象无关。结果是对象可以相互对话,而不必了解原因。一个简单示例是系统中的用户列表。下面的代码显示一个用户列表,添加用户时,它将发送出一条消息。添加用户时
shayang88
·
2013-12-20 23:09
php
设计模式
web
PHP
上一页
15
16
17
18
19
20
21
22
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他