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设计模式
之数据对象映射模式
db=new\Tools\MYSQLI(); $this->db->connect("localhost","root","","test"); $res=$this->db->query("select*fromuserlimit1"); $data=$res->fetch_assoc(); $this->id=$data['id']; $this->username=$data['userna
别人说我名字很长
·
2016-02-12 16:00
PHP设计模式
之策略模式
startegy=$strategy; } //显示 functionshow(){ $this->startegy->showAd(); echo""; $this->startegy->showCategory(); } } //根据参数展示不同的显示策略 $p=new\Tools\page(); if(isset($_GET["female"])){ $strategy=new\To
别人说我名字很长
·
2016-02-12 15:00
PHP设计模式
之适配器模式
conn=$conn; } functionquery($sql){ $res=mysql_query($sql,$this->conn); return$res; } functionclose(){ mysql_close($this->conn); } } //mysqli classMYSQLIimplementsIDatabase{ protected$conn; functio
别人说我名字很长
·
2016-02-12 14:00
php设计模式
之单例模式
_where=$where; return$this; } functionorder($order){ $this->_order=$order; return$this; } functionlimit($limit){ $this->_limit=$limit; return$this; } } //单例模式实例化 $db=\Tools\Database::getInstance()
别人说我名字很长
·
2016-02-12 14:00
php设计模式
之工厂模式
_where=$where; return$this; } functionorder($order){ $this->_order=$order; return$this; } functionlimit($limit){ $this->_limit=$limit; return$this; } } //普通实例化 //$db=new\Tools\Database(); //工厂模式实例
别人说我名字很长
·
2016-02-12 10:00
php设计模式
之注册模式
"zhangsan","sex"=>1,"age"=>25)); //读取 $person=\Tools\Register::get("person"); print_r($person); //删除 \Tools\Register::_unset("person"); //是否存在 var_dump(\Tools\Register::isValid("person"));
别人说我名字很长
·
2016-02-12 09:00
PHP设计模式
之适配器模式
1.说明1.适配器模式:能够将截然不同的函数接口封装成统一的API2.实际应用举例,PHP的数据库操作有mysql,mysqli,pdo3种。能够用适配器模式统一成一致。相似的场景还有cache适配器,就是将memcache,redis,file,apc等不同的缓存函数统一成一致的3.以下的样例能够帮助你对付各种数据库链接功能,mysqlmysqli,pdo随便选,操作都抽象为统一的接口clien
mengfanrong
·
2016-02-06 08:00
php 设计模式之工厂模式、单例模式、注册树模式
php设计模式
之工厂模式、单例模式、注册树模式在软件工程中,创建型设计模式承担着对象创建的职责,尝试创建适合程序上下文的对象,对象创建设计模式的产生是由于软件工程设计的问题,具体说是向设计中增加复杂度,
拿铁味的摩卡蛋糕
·
2016-01-24 00:00
注册树模式
单例模式
工厂模式
设计模式
php
PHP设计模式
-单例模式
单例模式(职责模式):简单的说,一个对象(在学习设计模式之前,需要比较了解面向对象思想)只负责一个特定的任务;单例类:1、构造函数需要标记为private(访问控制:防止外部代码使用new操作符创建对象),单例类不能在其他类中实例化,只能被其自身实例化;2、拥有一个保存类的实例的静态成员变量3、拥有一个访问这个实例的公共的静态方法(常用getInstance()方法进行实例化单例类,通过insta
phphan
·
2016-01-21 13:20
PHP设计模式-单例模式
PHP设计模式
-单例模式
单例模式(职责模式):简单的说,一个对象(在学习设计模式之前,需要比较了解面向对象思想)只负责一个特定的任务;单例类:1、构造函数需要标记为private(访问控制:防止外部代码使用new操作符创建对象),单例类不能在其他类中实例化,只能被其自身实例化;2、拥有一个保存类的实例的静态成员变量3、拥有一个访问这个实例的公共的静态方法(常用getInstance()方法进行实例化单例类,通过insta
phphan
·
2016-01-21 13:20
PHP设计模式-单例模式
PHP初学者的资源整理
网站教程:1、PHP编程语言andLaravel大型项目系列教程andThinkPHP框架实践andYii2系列教程——实验楼2、大话
PHP设计模式
andPHP与MySQL关系大揭秘andPHP面向对象编程
小柑
·
2016-01-16 15:57
PHP设计模式
--装饰器模式
装饰器设计模式什么是装饰器模式装饰器模式就是对一个已有的结构增加装饰。装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。何时使用装饰器基本说来,如果想为现有对象增加新功能而不想影响其他对象,就可以使用装饰器模式.装饰器类图装饰器的组成Component接口:定义一个对象接口,以规范准备接受附加责任的对象。Decorato
leisured
·
2016-01-10 13:00
细谈
PHP设计模式
----my note
现在php的书籍很多,其实原理都一样。 先谈其设计模式设计模式并不是是为Java架构师准备的。实际上,设计模式对于每个开发人员都非常有用。设计模式不仅代表着更快开发健壮软件的有用方法,而且还提供了以友好的术语封装大型理念的方法。例如,您可以说您正在编写一个提供松散耦合的消息传递系统,也可以说你正在编写名称为观察者的模式。用较小的示例展示模式的价值是非常困难的。这往往有些大材小用的意味,因为模
crossmix
·
2016-01-07 12:00
php中ob_start()系列函数的使用
我在看《
php设计模式
》的时候看到一个有趣的函数ob_start(),查了一下网友的博客,满心欢喜,我们在平时做模版缓存会选择Smart,实际上我们可以自己来,不借助其他工具,对于我这样对代码控制欲强的人来说简直好东西
辛丙亮
·
2015-12-21 15:34
PHP
学习
php设计模式
php实现备忘录模式(Memento)
一、意图在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样可以在以后把该对象的状态恢复到之前保存的状态。二、备忘录模式结构图三、备忘录模式中主要角色1、备忘录(Memento)角色:存储发起人(Originator)对象的内部状态,而发起人根据需要决定备忘录存储发起人的哪些内部状态。备忘录可以保护其内容不被发起人(Originator)对象之外的任何对象所读取。2、发
胖胖
·
2015-12-09 11:59
学习
php设计模式
php实现观察者模式(Observer)
一、意图定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新【GOF95】又称为发布-订阅(Publish-Subscribe)模式、模型-视图(Model-View)模式、源-监听(Source-Listener)模式、或从属者(Dependents)模式二、观察者模式结构图三、观察者模式中主要角色抽象主题(Subject)角色:主题角色将所有对
胖胖
·
2015-12-09 11:03
学习
php设计模式
php实现模板方法模式
一、意图定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。TemplateMethod使得子类可以在不改变一个算法的结构的情况下重定义该算法的某些特定的步骤【GOF95】二、模板方法模式结构图三、模板方法模式中主要角色抽象模板(AbstractClass)角色:定义一个或多个抽象方法让子类实现。这些抽象方法叫做基本操作,它们是顶级逻辑的组成部分。定义一个模板方法。这个模板方法一般是一个具体方法
胖胖
·
2015-12-08 14:30
学习
php设计模式
php实现命令模式(command)
一、意图将一个请求封装为一个对象,从而使用你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤消的操作。可变的方面是:何时,怎样满足一个请求命令模式是对命令的封装。命令模式把发出命令的责任和执行命令的责任分割开,委派给不同的对象。请求的一方发出请求要求执行一个操作;接收的一方收到请求,并执行操作。命令模式允许请求的一方和接收的一方独立开来,使得请求的一方不必知道接收请求的一方的
胖胖
·
2015-12-08 11:05
学习
php设计模式
php实现合成模式(composite)
一、意图将对象组合成树形结构以表示”部分-整体”的层次结构。Composite使用户对单个对象和组合对象的使用具有一致性。Composite变化的是一个对象的结构和组成。二、合成模式中主要角色抽象组件(Component)角色:抽象角色,给参加组合的对象规定一个接口。在适当的情况下,实现所有类共有接口的缺省行为。声明一个接口用于访问和管理Component的子组件树叶组件(Leaf)角色:在组合中
胖胖
·
2015-12-08 11:58
学习
php设计模式
php实现享元模式(flyweight)
一、意图运用共享技术有效的支持大量细粒度的对象享元模式变化的是对象的存储开销二、享元模式结构图三、享元模式中主要角色抽象享元(Flyweight)角色:此角色是所有的具体享元类的超类,为这些类规定出需要实现的公共接口。那些需要外蕴状态的操作可以通过调用商业以参数形式传入具体享元(ConcreteFlyweight)角色:实现Flyweight接口,并为内部状态(如果有的话)拉回存储空间。Concr
胖胖
·
2015-12-07 16:03
学习
php设计模式
php实现策略模式(strategy)
一、意图定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。策略模式可以使算法可独立于使用它的客户而变化策略模式变化的是算法二、策略模式结构图三、策略模式中主要角色抽象策略(Strategy)角色:定义所有支持的算法的公共接口。通常是以一个接口或抽象来实现。Context使用这个接口来调用其ConcreteStrategy定义的算法具体策略(ConcreteStrategy)角色:以St
胖胖
·
2015-12-07 16:42
学习
php设计模式
php实现状态模式
一、意图允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类状态模式变化的位置在于对象的状态二、状态模式结构图三、状态模式中主要角色抽象状态(State)角色:定义一个接口,用以封装环境对象的一个特定的状态所对应的行为具体状态(ConcreteState)角色:每一个具体状态类都实现了环境(Context)的一个状态所对应的行为环境(Context)角色:定义客户端所感兴趣的接口
胖胖
·
2015-12-07 16:51
学习
php设计模式
php实现适配器模式
一、意图将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原来由于接口不兼容而不能一起工作的那此类可以一起工作二、适配器模式结构图三、适配器模式中主要角色目标(Target)角色:定义客户端使用的与特定领域相关的接口,这也就是我们所期待得到的源(Adaptee)角色:需要进行适配的接口适配器(Adapter)角色:对Adaptee的接口与Target接口进行适配;适配器是本模式的核
胖胖
·
2015-12-07 16:19
学习
php设计模式
php实现工厂模式(factory)
一、意图定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod使用一个类的实例化延迟到其子类【GOF95】二、工厂模式结构图三、工厂模式中主要角色抽象产品(Product)角色:具体产品对象共有的父类或接口具体产品(ConcreteProduct)角色:实现抽象产品角色所定义的接口,并且工厂方法模式所创建的每一个对象都是某具体产品对象的实例抽象工厂(Creator)角色:
胖胖
·
2015-12-07 14:02
学习
php设计模式
php实现原型模式(prototype)
一、意图用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象二、原型模式结构图三、原型模式中主要角色抽象原型(Prototype)角色:声明一个克隆自身的接口具体原型(ConcretePrototype)角色:实现一个克隆自身的操作四、原型模式的优点和缺点Prototype模式优点:1、可以在运行时刻增加和删除产品2、可以改变值以指定新对象3、可以改变结构以指定新对象4、减少子类的构造5
胖胖
·
2015-12-07 13:14
学习
php设计模式
php实现门面模式(Facade)
一、意图为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层次的接口,使得子系统更加容易使用【GOF95】外部与子系统的通信是通过一个门面(Facade)对象进行。二、门面模式结构图三、门面模式中主要角色门面(Facade)角色:此角色将被客户端调用知道哪些子系统负责处理请求将用户的请求指派给适当的子系统子系统(subsystem)角色:实现子系统的功能处理由Facade对象指派
胖胖
·
2015-12-07 11:44
学习
php设计模式
php实现单例模式(singleton)
保证一个类仅有一个实例,并且提供一个访问它的全局访问点。单例模式有三个特点:1、一个类只有一个实例2、它必须自行创建这个实例3、必须自行向整个系统提供这个实例一、单例模式结构图二、单例模式中主要角色Singleton定义一个Instance操作,允许客户访问它的唯一实例。Instance是一个类方法。负责创建它的唯一的实例。三、单例模式的优点1、对唯一实例的受控访问2、缩小命名空间单例模式是对全局
胖胖
·
2015-12-07 11:36
学习
php设计模式
php实现桥梁模式(bridge)
一、桥梁模式结构图二、桥梁模式中主要角色抽象化(Abstraction)角色:定义抽象类的接口并保存一个对实现化对象的引用。修正抽象化(RefinedAbstraction)角色:扩展抽象化角色,改变和修正父类对抽象化的定义。实现化(Implementor)角色:定义实现类的接口,不给出具体的实现。此接口不一定和抽象化角色的接口定义相同,实际上,这两个接口可以完全不同。实现化角色应当只给出底层操作
胖胖
·
2015-12-07 11:49
学习
php设计模式
php实现装饰器模式(decorator)
动态的给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活【GOF95】装饰模式是以对客户透明的方式动态地给一个对象附加上更多的职责。这也就是说,客户端并不会觉得对象在装饰前和装饰后有什么不同。装饰模式可以在不使用创造更多子类的情况下,将对象的功能加以扩展。一、装饰模式结构图二、装饰模式中主要角色抽象构件(Component)角色:定义一个对象接口,以规范准备接
胖胖
·
2015-12-07 11:13
学习
php设计模式
php实现抽象工厂模式
抽象工厂模式(AbstactFactory)是一种常见的软件设计模式。该模式为一个产品族提供了统一的创建接口。当需要这个产品族的某一系列的时候,可以为此系列的产品族创建一个具体的工厂类。一、意图抽象工厂模式提供一个创建一系统相关或相互依赖对象的接口,而无需指定它们具体的类【GOF95】二、抽象工厂模式结构图三、抽象工厂模式中主要角色抽象工厂(AbstractFactory)角色:它声明一个创建抽象
胖胖
·
2015-12-07 11:42
学习
php设计模式
php实现建造者模式
建造者模式可以让一个产品的内部表象和和产品的生产过程分离开,从而可以生成具有不同内部表象的产品。一、Builder模式结构图二、Builder模式中主要角色抽象建造者(Builder)角色:定义一个抽象接口,规范产品各个组成成分的建造(即规范具体建造者的方法实现)。其中所规范的方法中必须包括建造方法和结果返回方法具体建造者(ConcreteBuilder)角色:实现抽象建造者角色所定义的方法。具体
胖胖
·
2015-12-07 11:07
学习
php设计模式
php实现访问者模式(Visitor)
访问者模式表示一个作用于某对象结构中各元素的操作。它可以在不修改各元素类的前提下定义作用于这些元素的新操作,即动态的增加具体访问者角色。访问者模式利用了双重分派。先将访问者传入元素对象的Accept方法中,然后元素对象再将自己传入访问者,之后访问者执行元素的相应方法。访问者模式多用在聚集类型多样的情况下。在普通的形式下必须判断每个元素是属于什么类型然后进行相应的操作,从而诞生出冗长的条件转移语句。
胖胖
·
2015-12-07 10:25
php设计模式
--策略模式
策略模式:策略模式我们无法通过字面意思来理解了:首先,创建一个接口,定义子类的实现规范;第二步,根据不同的业务逻辑,书写不同的方法,同时实现第一步中的接口.第三步,写一个独立的类,其中有两个方法,第一个为初始化(传入第二步中的子类的对象),第二个方法为统一的执行类(当然有了接口这个也可以省略了).如下图:下面是一个完整的demo:obj=$obj;}//通过统一的实现方法来实现不同的对象内部的方法
wzh1044872145
·
2015-11-30 10:32
php设计模式
php设计模式--策略模式
php策略模式
php设计模式
php设计模式
--策略模式
策略模式: 策略模式我们无法通过字面意思来理解了: 首先,创建一个接口,定义子类的实现规范; 第二步,根据不同的业务逻辑,书写不同的方法,同时实现第一步中的接口. 第三步,写一个独立的类,其中有两个方法,第一个为初始化(传入第二步中的子类的对象),第二个方法 为统一的执行类(当然有了接口这个也可以省略了).如下图:下面是一个完整的demo:
wzh1044872145
·
2015-11-30 10:32
php设计模式
php策略模式
php设计模式--策略模式
php设计模式
--策略模式
策略模式: 策略模式我们无法通过字面意思来理解了: 首先,创建一个接口,定义子类的实现规范; 第二步,根据不同的业务逻辑,书写不同的方法,同时实现第一步中的接口. 第三步,写一个独立的类,其中有两个方法,第一个为初始化(传入第二步中的子类的对象),第二个方法 为统一的执行类(当然有了接口这个也可以省略了).如下图:下面是一个完整的demo:
wzh1044872145
·
2015-11-30 10:32
php设计模式
php策略模式
php设计模式--策略模式
php设计模式
--单例模式
单例模式顾名思义: 这个类只能实例化一次.不能被克隆.一般被用来处理数据库操作等需要频繁使用,但是多次实例化又很浪费内存的类.下面是一个带有注释的实例: info(); ?>
wzh1044872145
·
2015-11-28 18:06
单例模式
php设计模式
PHP单例模式
php设计模式
--单例模式
单例模式顾名思义: 这个类只能实例化一次.不能被克隆.一般被用来处理数据库操作等需要频繁使用,但是多次实例化又很浪费内存的类.下面是一个带有注释的实例: info(); ?>
wzh1044872145
·
2015-11-28 18:06
单例模式
php设计模式
PHP单例模式
PHP设计模式
之适配器模式
PHP设计模式
之适配器模式1、适配器模式的概念 适配器设计模式只是将某个对象的接口适配为另一个对象所期待的接口。
miss1128726
·
2015-11-22 18:00
设计模式
PHP
PHP设计模式
之单例模式
PHP设计模式
之单例模式1、单例模式概念 单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。
miss1128726
·
2015-11-20 21:00
php设计模式
- 建造者模式
"; $this->_type = $type; } public function setSize($size) { echo "set product size"; $this->_size = $size; } public function setColor($color) { echo "set product color"; $this->_colo
stone_
·
2015-11-20 12:00
php设计模式
- 适配器模式
"; } public function store($key,$value) { echo "OldCache store"; } public function remove($key) { echo "OldCache remove"; } public function fetch($key) { echo "OldCache fetc
stone_
·
2015-11-20 11:00
php设计模式
- 数据访问对象模式
_db = new MysqlDB(); // 这里的不能进行操作 } /** * 获取处理 * * @param array $filter // 过滤条件 * @param string $field // 获取字段 * @param int $page // 当前页 * @param int $l
stone_
·
2015-11-19 14:00
需要学习的技术
PHPYAFThink
PHP设计模式
JSJavascriptJqueryTypescriptAngularJsLinuxLinux命令Linux环境NginxApacheMyslqRedis业余需要学习
KoMiles
·
2015-11-19 10:00
需要学习的技术
PHPYAFThink
PHP设计模式
JSJavascriptJqueryTypescriptAngularJsLinuxLinux命令Linux环境NginxApacheMyslqRedis业余需要学习
KoMiles
·
2015-11-19 10:00
php设计模式
- 装饰器模式
userInfo[] = $userInfo; } public function getUserList() { print_r($this->userInfo); } }在不改变原先UserInfo类的基础上,改变用户信息输出为大写格式。userInfo as &$val) { $va
stone_
·
2015-11-18 18:00
php设计模式
- 委托模式
cdInfo[$song] = $song; } public function playMp3($song) { return $this->cdInfo[$song] . '.mp3'; } public function playMp4($song) { return $thi
stone_
·
2015-11-18 17:00
php设计模式
- 外观者模式
userName = $userName; } public function setUserAge($userAge) { return $this->userAge = $userAge; } public function getUser() { echo '用户姓名:' .
stone_
·
2015-11-18 17:00
php设计模式
- 工厂模式
stone_
·
2015-11-18 17:00
php设计模式
- 解释器模式
interpreter($temp); } } } echo Interpreter :: execute("12345abc"); ?>解释器模式:用于分析一个实体的关键元素,并且针对每个元素提供自己的解释或相应动作。常用在框架的模版引擎。
stone_
·
2015-11-18 16:00
php设计模式
- 迭代器模式
_arr =$arr; } public function first() { return$this->_arr[0]; } public function current() { return current($this->_arr); } public function next() { return next($this->_arr); } public function
stone_
·
2015-11-18 15:00
上一页
10
11
12
13
14
15
16
17
下一页
按字母分类:
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
其他