PHP面向对象高级编程与设计.ppt

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PHP面向对象高级编程与设计

PHP面向对象高级编程和设计模式 PHP 5重新设计了面向对象的模型,增加许多面向对象的特性。对于面向对象思想中的高级编程和面向对象中的设计模式,PHP 5都能够很好的实现。面向对象的程序设计不仅表现在程序的语法规则和语言特性上,更表现了设计思想。 21.1 重载 在PHP 5中,引入了对象重载技术,允许通过实现某些特殊的方法对对象属性的访问和方法调用进行重载。实际上,用C语言所编写的扩展几乎可以重载PHP语法的每一部分。这一节将对PHP 5中的重载作详细的介绍。 21.1.1 属性和方法的重载 在PHP 5中,允许程序员采用自定义的行为来访问属性和调用方法的方式来进行重载。这些自定义的行为将在属性和方法并不存在时进行调用。PHP 5的这种特性将使得在定义自己的操作时获取很大的灵活性。在PHP 5中的重载,主要分为属性的重载和方法的重载。 1.方法的重载 2.属性的重载 21.1.2 使用数组语法访问的重载 除了方法的重载和属性的重载以外,还有一种特殊用法,那就是采用数组语法访问的重载。使用关键字和值的映射模式是一种常用的方法。在PHP中,可使用联合数组将整型或者字符串的值映射到任何其它的PHP值。PHP 5允许使用类似数组的方式重载一个对象。表面上,仍然采用的是数组访问的语法,但实际上PHP将自动调用实现功能的方法,由该方法执行相应的操作,例如从数据库中查找某人,将返回需要的值。 21.2 设计模式 在PHP 5中,对于面向对象编程有的很好的支持。PHP作为一门支持面向对象思想的高级语言,完全可以实现面向对象编程中的很多高级功能。例如方法重载、映射等。但仅这些,还不足以说明PHP是一门完全支持面向对象的语言。这一节将对PHP中面向对象高级编程中的设计模式作详细的介绍。 21.2.1 设计模式简介 经过多年的软件开发实践,Gamma 等人发现了某些具有固定设计的开发模式,就像建筑设计师设计房子和建筑物一样,可以为浴室的位置或厨房的构造方式开发模板。使用这些模板或者说设计模式意味着可以更快地设计更好的建筑物。同样的概念也适用于软件。 21.2.2 单例模式 单例模式几乎可以说是最著名的设计模式之一。在实际的PHP项目中,常常会遇到某一个或几个资源在整个项目中被共享使用。例如日志记录对象、数据库连接对象等,这些对象往往需要在整个应用程序范围内存在,并能够让整个应用程序的代码都能够正常的访问。因为这些对象没有必要在每一次使用时都实例化一个对象,不仅低效而且浪费资源。 21.2.3 策略模式 在进行面向对象的软件开发时,常常需要根据不同的条件引入不同的操作对象实例。例如在显示用户菜单时,需要根据用户的角色而显示不同的菜单,管理员除显示常规菜单外,还将显示管理菜单,而一般用户将只显示常常操作菜单。 21.2.4 工厂模式 在面向对象的开发中,通常都是采用new操作符直接实例化一个类而产生一个实例,new操作符就是用来构造对象实例的。但在某些上,却必须创建基类的子类的一个具体实例,或者在创建需要的对象之前必须创建一些具有辅助功能的对象,此时通常都是采用工厂模式实现。 21.2.5 观察者模式 在面向对象编程中,对象之间连接在一起,则相互之间提供服务和信息。此时如果某一个对象的状态发生变化,将可能会影响到整个应用中的多个不同部分。若因代码环境的变化而大量的修改代码显示是不可取的,此时只需要根据具体的应用环境而只修改通信代码即可。 21.2.6 适配器模式 在实际的应用中,常常会遇到接口的改变,软件开发人员需要根据接口修改其代码。这是软件开发人员非常不愿意看到的。此时可采用适配器模式解决该问题。适配器模式为对象提供了一种完全不同的接口。软件开发人员可以运用适配器来实现一个不同的类的常见接口。 21.3 小结 本章对PHP中面向对象高级编程和PHP中的常用设计模式作了详细的讲解。PHP中的高级技巧在开发大型网站时尤为重要。对于初学者而言,这一章是本书最大的难点。读者若想要PHP技术能够更上一层楼,必须仔细领会本章内容,并将其应用到实际的开中。对于设计模式的更多资料,读者可参考相关资料。 1-* 1-*

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档