高端PHP培训高性能架构班!课件.ppt

上传人(卖家):三亚风情 文档编号:3223096 上传时间:2022-08-07 格式:PPT 页数:33 大小:639KB
下载 相关 举报
高端PHP培训高性能架构班!课件.ppt_第1页
第1页 / 共33页
高端PHP培训高性能架构班!课件.ppt_第2页
第2页 / 共33页
高端PHP培训高性能架构班!课件.ppt_第3页
第3页 / 共33页
高端PHP培训高性能架构班!课件.ppt_第4页
第4页 / 共33页
高端PHP培训高性能架构班!课件.ppt_第5页
第5页 / 共33页
点击查看更多>>
资源描述

1、高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程面向对象与设计模式-教你写出优雅的代码高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程1.学习设计模式的意义2.设计模式概念3.先说多态4.简单工厂模式5.工厂方法模式6.单例模式7.观察者模式8.职责链模式9.策略模式10.装饰模式11.适配器模式12.桥接模式学习目录高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程学习设计模式的意义1:更深入的理解面向对象的思想.2:有利

2、于开发出扩展性强的程序3:面试时的重要考察方面1:学习设计模式的意义高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程在软件开发过程中,经常出现的典型场景的典型解决方案,称为设计模式2:设计模式的概念生活中也有很多设计模式:象棋招法,泡妞思路,电影悬疑等等高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程2.1:动手造几个设计模式典型场景:同学聚会典型问题:问你工资典型解决:?典型场景:QQ,屌丝,女神典型问题:女神,还没睡?典型解决:?如何学习设计模式?典型场景-典型问题-典型解决

3、办法高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程3:先说多态为什么先说多态?答:多态相对封装与继承,理解稍微复杂一些.更重要的是,通过PHP,Java多态的不同体现,体会静态语言与动态语言的巨大差异 -而这个差异巨大,影响到设计模式.对于动态语言,不可照搬java,C+中的设计模式高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程3.1:多态多态(Polymorphism)是一个生物学上的概念,指同一特种的多种表现形态.如:西伯利亚虎一般重210-260公斤,而孟加拉虎一般18

4、0-230公斤在面向对象中,指某种对象实例的不同表现形态.多态特点,在静态语言中体现的更为明显.高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程3.2:老虎爬树如不明,可看多态详细讲解:http:/www.zixue.it/article-122-1.html西伯利亚虎不能爬树孟加拉虎可以爬树那么老虎,到底能否爬树?请看java与PHP演示体会静态与动态的巨大差异高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程4:简单工厂模式 Factory高端高端PHPPHP培训培训 高性能架

5、构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程4.1:分析问题代码执行没问题,调用没问题!但是:你(客户端,调用者)怎么知道我有个DBmysql类,和 DBMysqli类?1:客户端应该只看到接口,不应该知道接口的实现.体现封装隔离原则.2:无论客户端,而是后端,都依赖于抽象接口,而非依赖于具体高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程4.2:解决问题添加一个工厂,由工厂负责创造对象,并返回高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程4.3:用简单

6、工厂后高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程4.4:用简单工厂的真正意义看似仅仅是把创建对象的过程包装了一下,真正的变化在于面向接口,隔离封装,客户端只知接口,不知具体实现.后端的实现,只知接口,不管前端谁调用高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程4.5:简单工厂需改进之处如果新增PDO方式,是否还要改Factory?修改if/else分支?违反开闭原则.另:这个工厂如果分支足够多,能帮你创建所有的类,形成万能工厂,面向对象设计中,不推荐一个类的功能过多.我们

7、可以把有相关关系的产品交由一个工厂生产高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程1988年,勃兰特梅耶(Bertrand Meyer)在他的著作面向对象软件构造(Object Oriented Software Construction)中提出了开闭原则,它的原文是这样:“Software entities should be open for extension,but closed for modification”。翻译过来就是:“软件实体应当对扩展开放,对修改关闭”。通俗的说:添加新类/接口等进来行,修改不行.开闭原则高端

8、高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程5.0:工厂方法 Factory Method工厂方法中,一个工厂生产多个零件,但零件的共同特点是-属于一个产品.即 此工厂可以生产产品,而非单独的对象高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程6:单例模式 singleton 场景回放高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程6.1:问题-如何确保只制造一个对象?1:对象的产生,需要new或者clone2:防止产生过

9、多的对象,要防止new和clone3:综上,没有对象时,允许new,并把对象缓存.下次直接返回该对象高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程6.2:解决效果高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程6.3:模式解析1:我学java时听说有懒汉式和饿汉式单例模式答:PHP的属性不支持表达式,不支持饿汉式2:php的单例,仅指进程中单例,不似java,在整个内存中单例高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教

10、程7:观察者模式 Observer高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程7.1:一般的思路1:判断选中的值2:顺序下来,根据值,修改内容区域3:再修改广告区域.if(v=男)内容区背景变灰 广告区内容变成男人话题 else if(v=女)内容区背景变粉 广告区内容变成女人话题问题在哪儿?1:让你选择时引起3个区域的变化,是否要修改if/elseif部分2:如果选择女性样式,但不要变粉,现在流行变紫色,是否又要修改if elseif部分?问题在于:控制逻辑与被操作对象耦合严重.高端高端PHPPHP培训培训 高性能架构班高性能架构

11、班!燕十八 主讲zixue.it 燕十八精品PHP教程7.2:解决办法我们让div对象观察select的变化,select变化,就会通知道这两个对象.并引起这2个对象的变化,实现观察者模式高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程7.3:解决效果select对象负责attach,detach,notifyObservers,与具体的对象变化解耦高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程8:职责链模式 chain of resionbility高端高端PHPPHP培训培

12、训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程8.1:一般做法POST发送数据,PHP接收到数据,判断举报的级别.if(粗口)启动转发给版主的流程 else if(黄赌毒)启动转发给管理员的流程 else 启动转发给公安的流程问题在哪儿:1:如果新增了举报级别,要改if else 代码段.2:如果流程内部有改动,也要到if else 代码段来操作.总结:逻辑与执行操作的对象耦合严重.高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程8.2:解决办法-职责链模式版主管理员公安每个对象,储存着对自己上级的引用

13、,如果自己处理不了,交给上一级.高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程8.3:解决之后-职责链模式如下,只需要提交给版主即可,版主处理不了,会自动提交给上一级,直到处理完毕.高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程9:策略模式高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程9.1:一般的思路根据传递的参数不同,进行加减乘除运算思考:如果想增加取模运算又如何操作?想一想简单工厂方法,是否有些相似?又有哪些不

14、同?通过接口,隔离封装通过继承,适应变化工厂模式,我们着眼于得到对象,并操作对象,策略模式,我们着重得到对象某方法的运行结果高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程9.1:策略的实现 strategycontext对象持有计算对象并计算结果直接返回高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程10:装饰器模式 decorator这是一篇帖子帖子的内容我写好了,三个部门的人员想控制他.编辑组要添导读文字审核组要去敏感字市场部想在末尾加点广告我只是一篇帖子,由你们来处置吧分析:三部分都操作该文章,最先是编辑组,继承该文章并添加了导读方法审核组来了,继承了该文章,添加去敏感字方法市场部,继承该文章,添加广告方法.继承的层次越来越深能否不继承,动态的增加对象的功能?高端高端PHPPHP培训培训 高性能架构班高性能架构班!燕十八 主讲zixue.it 燕十八精品PHP教程10.1:引入装饰器模式

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(高端PHP培训高性能架构班!课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|