当前位置: 首页 > news >正文

做网站一定需要服务器吗建筑最吃香的专业

做网站一定需要服务器吗,建筑最吃香的专业,wordpress 文件下载漏洞,如何用电脑做网站服务器吗一、观察者模式 当一个对象状态发生改变时,依赖它的对象全部会收到通知,并自动更新 场景:一个事件发生后,要执行一连串更新操作。传统的编程方式,就是在事件的代码之后直接加入处理逻辑。当更新的逻辑增多之后&#x…

一、观察者模式

  1. 当一个对象状态发生改变时,依赖它的对象全部会收到通知,并自动更新

  2. 场景:一个事件发生后,要执行一连串更新操作。传统的编程方式,就是在事件的代码之后直接加入处理逻辑。当更新的逻辑增多之后,代码会变得难以维护。这种方式是藕合的,侵入式的,增加新的逻辑需要修改事件主体的代码

  3. 观察者模式实现了低耦合,非侵入式的通知与更新机制

<?php
​
interface watcher{public function update();
}
​
abstract class watch{private $watchArr = array();public function addWatchArr(watcher $watcher){$this->watchArr[] = $watcher;}public function notify(){foreach($this->watchArr as $value){$value->update();}}
}
​
class watcher1 implements watcher{public function update(){echo "update watcher1";}
}
​
class watcher2 implements watcher{public function update(){echo "update watcher2";}
}
​
​
class main extends watch{public function test(){echo "update1";$watcher1 = new watcher1();$watcher2 = new watcher2();$this->addWatchArr($watcher1);$this->addWatchArr($watcher2);$this->notify();
​}
}
​
$main = new main();
$main->test();

上面的interface{} 为每个实例提供了统一的方法,那么抽象方法提供了添加实例以及统一遍历实例的方法。

二、适配器模式

  1. 适配器模式,可以将截然不同的函数接口封装成统一的API

  2. 实际应用举例,PHP 的数据库操作有mysql,mysqli 等,可以通过适配器模式统一成一致

interface database{public function connect();public function query();
​public function delete();
}
​
class mysql implements database{public function connect(){
​}
​public function query(){
​}
​public function delete(){}
}

三、策略模式

  1. 策略模式,将一组特定的行为和算法封装成类,以适应某些特定的上下文环境,这种模式就是策略模式

  2. 使用策略模式可以实现IOC,依赖倒置、控制反转

<?php

interface advertise{public function show();
}
​
​
class man implements advertise{ public function show(){echo "显示man";}
}
​
​
class woman implements advertise{public function show(){echo "显示woman";}
}
​
​
class showindex{private $advertise;public function addObject(advertise $advertise){$this->advertise = $advertise;}public function index(){$this->advertise->show();}
}
​
​
$showindex = new showindex();
$women = new woman();
$showindex->addObject($women);
$showindex->index();

四、装饰器模式

  1. 装饰器模式,可以动态地添加修改类的功能

  2. 一个类提供了一项功能,如果修改并添加额外的功能,传统的编程模式,需要写一个子类继承它,并重新实现类的方法

  3. 使用装饰器模式,仅需在运行时添加一个装饰器对象即可实现,可以实现最大的灵活性

interface drawInterface{public function beforeDraw();public function afterDraw();
}
​
class Draw{
​private $addDraw = array();public function addDrwa(drawInterface $draw){$this->addDraw[] = $draw;}private function beforeDraw(){foreach($this->addDraw as $row){$row->beforeDraw();}}
​private function afterDraw(){$t = array_reverse($this->addDraw);foreach($t as $row){$row->afterDraw();}}public function show(){$this->beforeDraw();echo "*";$this->afterDraw();}
}
​
​
class A implements drawInterface{public function beforeDraw(){echo "<h1>";}public function afterDraw(){echo "</h1>";}
}
​
class B implements drawInterface{public function beforeDraw(){echo "<h2>";}public function afterDraw(){echo "</h2>";} 
}
​
$draw = new Draw();
$draw->addDrwa(new A());
$draw->addDrwa(new B());
$draw->show();

http://www.yayakq.cn/news/811087/

相关文章:

  • 湖南做网站kaodezhu互联网保险现状
  • 大连专业制作网站怎么查询菠菜网站做没作弊
  • 番禺开发网站费用东莞网站建设 钢结构
  • 企业做网站etp和源程序江西省建设职业培训学校网站
  • 简单的电商网站开发wordpress淘宝客知乎
  • 网站建设备案查询wordpress的主题在哪个文件夹
  • 河北省住房城乡建设局网站首页外贸php网站源码
  • 简单网站开发流程wordpress自定义分类面包屑导航
  • 绝缘子网站建设哈尔滨信息网招聘
  • 同ip网站做友链app开发软件排行榜
  • 中国公路建设招标网站数商云医药行业
  • 用双语网站做seo会不会门户网站界面设计模板
  • 怎么做网站里的悬浮窗口长沙百度推广开户
  • 扬州网站优化怎样给自己的店子做网站
  • 襄阳南漳县城乡建设局网站wordpress 图片链接下载
  • 挑号网站后台怎么更新网站建设多少钱裤
  • docket wordpress百度seo排名原理
  • 如何自己做收费的视频网站网络营销指导如何做
  • 十堰网站建设怎么做网络公司哪家比较好
  • 博兴县建设局官方网站淄博网络推广公司哪家好
  • 网站推广注册学销售去哪个学校好
  • 网页网站导读怎么做龙岗做网站公司
  • 创建软件的步骤山东关键词优化联系电话
  • 网站单页制作教程做网站的是什么工种
  • 科技网站 石家庄免费动态域名解析软件
  • 网站上面的水印怎么做贵阳国家经济技术开发区门户网站
  • 商务网站建设的必备功能手机网站设计趋势
  • 创意网站制作微信网页版登录界面
  • 网站建设需求指引安徽餐饮网站建设
  • 如何建立英文网站视差效果网站