图书介绍

图灵程序设计丛书 深入PHP 面向对象、模式与实践 第5版PDF|Epub|txt|kindle电子书版本网盘下载

图灵程序设计丛书 深入PHP 面向对象、模式与实践 第5版
  • 杨文轩译;温雪责任编辑;(英)马特·赞德斯彻 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115512338
  • 出版时间:2019
  • 标注页数:510页
  • 文件大小:137MB
  • 文件页数:526页
  • 主题词:PHP语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

图灵程序设计丛书 深入PHP 面向对象、模式与实践 第5版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一部分 对象2

第1章 PHP:设计和管理2

1.1问题2

1.2PHP与其他语言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.1PHP对象的偶然成功9

2.1.1起源:PHP/FI9

2.1.2语法糖:PHP39

2.1.3一场静悄悄的革命:PHP410

2.1.4拥抱变化:PHP511

2.1.5迎头追赶:PHP712

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.3public、private和protected:管理类的访问38

3.6小结43

第4章 高级特性44

4.1静态方法和属性44

4.2常量属性47

4.3抽象类48

4.4接口50

4.5trait52

4.5.1trait可以解决的问题52

4.5.2定义和使用trait53

4.5.3使用多个trait54

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.8final类和方法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.1PHP和包93

5.1.1PHP包和命名空间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反射API112

5.3.1入门112

5.3.2是时候大干一场了113

5.3.3检查类115

5.3.4检查方法117

5.3.5检查方法参数118

5.3.6使用反射API120

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.8UML134

6.8.1类图135

6.8.2序列图140

6.9小结142

第二部分 模式144

第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.5PHP与设计模式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.1架构概述252

12.1.1模式252

12.1.2应用与分层253

12.2企业架构外的基础模式255

12.2.1注册表255

12.2.2实现256

12.2.3效果260

12.3表示层260

12.3.1前端控制器261

12.3.2应用控制器271

12.3.3页面控制器283

12.3.4模板视图和视图助手288

12.4业务逻辑层291

12.4.1事务脚本291

12.4.2领域模型295

12.5小结298

第13章 数据库设计模式299

13.1数据层299

13.2数据映射器299

13.2.1问题300

13.2.2实现300

13.2.3效果313

13.3标识映射315

13.3.1问题315

13.3.2实现315

13.3.3效果318

13.4工作单元319

13.4.1问题319

13.4.2实现319

13.4.3效果323

13.5延迟加载323

13.5.1问题323

13.5.2实现324

13.5.3效果326

13.6领域对象工厂326

13.6.1问题326

13.6.2实现326

13.6.3效果327

13.7标识对象329

13.7.1问题329

13.7.2实现330

13.7.3效果335

13.8选择工厂与更新工厂模式335

13.8.1问题336

13.8.2实现336

13.8.3效果340

13.9现在映射器中还剩下什么340

13.10小结342

第三部分 实践346

第14章 优秀(以及糟糕)的实践346

14.1超越代码346

14.2借轮子347

14.3合作愉快348

14.4为代码插上翅膀349

14.5标准350

14.6Vagrant350

14.7测试351

14.8持续集成351

14.9小结352

第15章 PHP标准353

15.1为什么需要标准353

15.2什么是PSR354

15.2.1为什么选择PSR354

15.2.2哪些人需要PSR355

15.3编码风格355

15.3.1PSR-1基础编码规范356

15.3.2PSR-2编码风格规范358

15.3.3检查和修改代码360

15.4PSR-4自动加载规范362

15.5小结365

第16章 通过Composer使用和创建组件366

16.1什么是Composer366

16.2安装Composer367

16.3安装一个(组)包367

16.3.1通过命令行安装包368

16.3.2版本368

16.3.3require-dev元素369

16.4Composer与自动加载370

16.5创建自己的包371

16.5.1添加包信息371

16.5.2平台软件包372

16.6通过Packagist分发包373

16.7私有包376

16.8小结377

第17章 用Git进行版本控制378

17.1为什么进行版本控制378

17.2安装Git379

17.3使用在线Git代码库380

17.4配置Git服务器382

17.5启动项目384

17.6更新与提交387

17.7文件和目录的添加与移除390

17.7.1添加文件390

17.7.2删除文件390

17.7.3添加目录391

17.7.4删除目录391

17.8标记一次发布392

17.9创建分支393

17.10小结398

第18章 使用PHPUnit进行测试399

18.1功能测试与单元测试399

18.2手动测试400

18.3引入PHPUnit402

18.3.1创建测试用例402

18.3.2断言方法405

18.3.3测试异常406

18.3.4运行测试套件407

18.3.5约束407

18.3.6mock和stub409

18.3.7失败是成功之母412

18.4编写Web测试415

18.4.1为测试重构Web应用415

18.4.2简单的Web测试417

18.4.3引入Selenium419

18.5警告424

18.6小结426

第19章 使用Phing进行自动化构建427

19.1Phing是什么427

19.2获取和安装Phing428

19.3编写构建文档428

19.3.1目标430

19.3.2属性432

19.3.3类型438

19.3.4任务443

19.4小结446

第20章 Vagrant447

20.1问题447

20.2设置448

20.3挂载本地目录到Vagrant镜像450

20.4配置451

20.4.1设置Web服务器452

20.4.2设置MySQL452

20.4.3配置主机名453

20.5结束语455

20.6小结455

第21章 持续集成456

21.1什么是持续集成456

21.1.1准备一个持续集成项目458

21.1.2安装Jenkins插件467

21.1.3设置Git公钥468

21.1.4创建新项目469

21.1.5运行第一次构建472

21.1.6配置报告472

21.1.7触发构建474

21.2小结476

第22章 对象、模式和实践477

22.1对象477

22.1.1选择478

22.1.2封装与委托478

22.1.3解耦478

22.1.4可复用性479

22.1.5美学479

22.2模式479

22.2.1模式给我们带来了什么480

22.2.2模式与设计原则480

22.3实践482

22.3.1测试482

22.3.2标准483

22.3.3版本控制483

22.3.4自动构建483

22.3.5持续集成484

22.3.6我们遗漏了什么484

22.4小结485

附录A 参考文献486

附录B 一个简单的解析器488

热门推荐