深入PHP面向对象.模式与实践-(第5版)-图灵程序设pdf下载

深入PHP面向对象.模式与实践-(第5版)-图灵程序设百度网盘pdf下载

作者:
简介:深入PHP面向对象.模式与实践-(第5版)-图灵程序设
出版社:
出版时间:
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

基本信息

商品名称: 深入PHP面向对象.模式与实践-(第5版) 出版社: 人民邮电出版社 出版时间:2019-06-01
作者:马特.赞德斯彻 译者:杨文轩 开本: 16开
定价: 129.00 页数: 印次: 1
ISBN号:9787115512338 商品类型:图书 版次: 1

编辑推荐

“本书正是为PHP企业级开发人员和软件工程师量身打造的,每一位想提升技能的PHP开发人员都应阅读。”——Ken Guest,PEAR QA团队成员,爱尔兰Linux用户组主席 “本书将原本复杂的面向对象编程原则和模式讲解得通俗易懂。我有Java编程经验,工作中又要用到PHP,在尝试将Java设计模式整合到PHP项目的过程中,从本书获得了不少实实在在的帮助。”——***英文网站读者评论 想要成为一名出类拔萃的PHP程序员,让项目开发高效、可持续,可得百尺竿头更进一步,不仅要知道PHP能做什么,还要理解软件系统的设计美学。 本书通过提出问题、给出实现和讨论效果的介绍方式,详细讲解面向对象的PHP编程原则与关键设计模式,是一本难得的PHP进阶佳作。第5版针对PHP新特性和程序开发现状全面更新,增加了匿名类、标量参数提示和返回值类型等特性介绍,重写了Composer和Packagist库的相关内容,并用完整章节分别介绍了Git版本管理、Vagrant以及PHP标准,示例代码也全面更新,符合PSR-1和PSR-2标准。 ● **部分“对象”:PHP和对象的历史;类、对象和继承;PHP的高级面向对象特性。 ● 第二部分“模式”:设计模式及原则;一些关键模式,如用于生成对象的模式、用于组织对象和类的模式、面向任务的模式、企业设计模式、数据库模式等。 ● 第三部分“实践”:PHP标准;Composer和Packagist库;用Git进行版本控制;自动化测试及构建;Vagrant;持续集成。

内容提要

本书是PHP经典图书升级版,它既是一本关于面向对象设计与编程的书,也是一本关于如何使用工具管理PHP代码(从协作到部署)的书。书中讲解了PHP的新特性,例如匿名类以及标量参数提示和返回值类型。第5版重写了Composer和Packagist库的相关内容,并增加了关于Git版本控制的篇幅。示例代码全面更新,符合PSR-1和PSR-2标准。阅读本书能够帮你构建实现既定目标且易于协同开发的系统,并让你的代码优雅、简洁且易于理解。

作者简介

马特·赞德斯彻(Matt Zandstra), 20余年Web开发经验,曾担任Yahoo!公司高级开发人员,现在是自由顾问和作家,为Linux Magazine、Zend.com、IBM DeveloperWorks和php[architect] Magazine等撰写过文章。 杨文轩, 华中科技大学硕士,擅长Web开发,有丰富的对日开发经验。现任职于日本方正股份有限公司。译作有《图解基础设施设计模式》《C++性能优化指南》《图解设计模式》等。

目录

第 一部分 对象 第 1章 PHP:设计和管理 2 1.1 问题 2 1.2 PHP与其他语言 3 1.3 关于本书 5 1.3.1 对象 5 1.3.2 模式 6 1.3.3 实践 6 1.3.4 第5版新增内容 7 1.4 小结 8 第 2章 PHP和对象 9 2.1 PHP对象的偶然成功 9 2.1.1 起源:PHP/FI 9 2.1.2 语法糖:PHP 3 9 2.1.3 一场静悄悄的革命:PHP 4 10 2.1.4 拥抱变化:PHP 5 11 2.1.5 迎头追赶:PHP 7 12 2.2 拥护和顾虑:关于对象的争辩 12 2.3 小结 13 第3章 对象基础 14 3.1 类和对象 14 3.1.1 第 一个类 14 3.1.2 一个(或两个)对象 15 3.2 设置类中的属性 16 3.3 使用方法 18 3.4 参数和类型 21 3.4.1 基本类型 21 3.4.2 接受提示:对象类型 24 3.5 继承 28 3.5.1 继承问题 28 3.5.2 使用继承 33 3.5.3 public、private和protected:管理类的访问 38 3.6 小结 43 第4章 高级特性 44 4.1 静态方法和属性 44 4.2 常量属性 47 4.3 抽象类 48 4.4 接口 50 4.5 trait 52 4.5.1 trait可以解决的问题 52 4.5.2 定义和使用trait 53 4.5.3 使用多个trait 54 4.5.4 组合使用trait与接口 55 4.5.5 通过insteadof管理方法名冲突 56 4.5.6 使用别名重写trait的方法 57 4.5.7 在trait中使用静态方法. 58 4.5.8 访问宿主类的属性 59 4.5.9 在trait中定义抽象方法 59 4.5.10 改变trait中方法的访问权限 60 4.6 延迟静态绑定:static关键字 61 4.7 错误处理 65 4.8 final类和方法 73 4.9 内部错误类 74 4.10 使用拦截器 75 4.11 定义析构方法 81 4.12 使用__clone()复制对象 82 4.13 定义对象的字符串值 85 4.14 回调、匿名函数和闭包 86 4.15 匿名类 90 4.16 小结 92 第5章 对象工具 93 5.1 PHP和包 93 5.1.1 PHP包和命名空间 93 5.1.2 自动加载 101 5.2 类函数和对象函数 105 5.2.1 查找类 106 5.2.2 检查对象或类 106 5.2.3 得到指向类的完全限定的字符串引用 107 5.2.4 检查方法 108 5.2.5 检查类属性 110 5.2.6 检查继承 110 5.2.7 方法调用 111 5.3 反射API 112 5.3.1 入门 112 5.3.2 是时候大干一场了 113 5.3.3 检查类 115 5.3.4 检查方法 117 5.3.5 检查方法参数 118 5.3.6 使用反射API 120 5.4 小结 123 第6章 对象与设计 124 6.1 定义代码设计 124 6.2 面向对象编程与面向过程编程 125 6.2.1 职责 129 6.2.2 内聚 129 6.2.3 耦合 129 6.2.4 正交 129 6.3 选择类 130 6.4 多态 131 6.5 封装 132 6.6 忘记细节 133 6.7 四个方向标 133 6.7.1 代码重复 134 6.7.2 类知道太多 134 6.7.3 万能的类 134 6.7.4 条件语句 134 6.8 UML 134 6.8.1 类图 135 6.8.2 序列图 140 6.9 小结 142 第二部分 模式 第7章 什么是设计模式,为什么要使用设计模式 144 7.1 什么是设计模式 144 7.2 设计模式概要 146 7.2.1 名称 146 7.2.2 问题 146 7.2.3 解决方案 147 7.2.4 效果 147 7.3 《设计模式》的格式 147 7.4 为什么使用设计模式 148 7.4.1 设计模式定义了问题 148 7.4.2 设计模式定义了解决方案 148 7.4.3 设计模式与编程语言无关 148 7.4.4 模式定义了一组词汇 148 7.4.5 模式是经过测试的 149 7.4.6 模式为协作而设计 149 7.4.7 设计模式促进**设计 149 7.4.8 流行的框架都使用了设计模式 150 7.5 PHP与设计模式 150 7.6 小结 150 第8章 一些模式原则 151 8.1 模式的启示 151 8.2 组合与继承 152 8.2.1 问题 152 8.2.2 使用组合 155 8.3 解耦 157 8.3.1 问题 157 8.3.2 解耦 159 8.4 针对接口编程,而不是针对实现编程 161 8.5 概念在变化 162 8.6 不要盲从模式 162 8.7 模式 163 8.7.1 用于生成对象的模式 163 8.7.2 用于组织对象和类的模式 163 8.7.3 面向任务的模式 163 8.7.4 企业设计模式 163 8.7.5 数据库模式 163 8.8 小结 163 第9章 生成对象 164 9.1 生成对象的问题和解决方案 164 9.2 单例模式 168 9.2.1 问题 169 9.2.2 实现 169 9.2.3 效果 171 9.3 工厂方法模式 172 9.3.1 问题 172 9.3.2 实现 175 9.3.3 效果 177 9.4 抽象工厂模式 177 9.4.1 问题 177 9.4.2 实现 178 9.4.3 效果 180 9.5 原型模式 181 9.5.1 问题 182 9.5.2 实现 183 9.6 推向边缘:服务定位器 186 9.7 完全隔离:依赖注入 187 9.7.1 问题 187 9.7.2 实现 188 9.7.3 效果 191 9.8 小结 191 第 10章 使面向对象编程更加灵活的模式 192 10.1 构造可灵活创建对象的类 192 10.2 组合模式 192 10.2.1 问题 193 10.2.2 实现 195 10.2.3 效果 199 10.2.4 组合模式小结 202 10.3 装饰器模式 202 10.3.1 问题 202 10.3.2 实现 205 10.3.3 效果 209 10.4 外观模式 209 10.4.1 问题 209 10.4.2 实现 211 10.4.3 效果 211 10.5 小结 212 第 11章 执行及描述任务 213 11.1 解释器模式 213 11.1.1 问题 213 11.1.2 实现 214 11.1.3 解释器模式的问题 222 11.2 策略模式 222 11.2.1 问题 222 11.2.2 实现 223 11.3 观察者模式 227 11.4 访问者模式 235 11.4.1 问题 235 11.4.2 实现 236 11.4.3 访问者模式的问题 241 11.5 命令模式 242 11.5.1 问题 242 11.5.2 实现 242 11.6 空对象模式 247 11.6.1 问题 247 11.6.2 实现 249 11.7 小结 251 第 12章 企业设计模式 252 12