全新正版书籍,24小时发货,可开发票。
¥ 72.4 5.2折 ¥ 139 全新
库存16件
作者[美]詹姆斯·W. 库珀
出版社机械工业出版社
ISBN9787111737674
出版时间2023-11
装帧平装
开本16开
定价139元
货号29653860
上书时间2024-12-02
前 言
在我刚开始学习Python时,Python超级简单的编程代码和简单易学的基本程序给我留下了深刻的印象。Python的语法非常简单,不需要记忆括号或分号。不同于那些需要使用Tab键来创建4个首行缩进的空格的编程语言,Python语言编程简单易学。
使用Python几周后,我认识到Python是如此令人难以置信,它可实现非常强大的功能。Python是一门完全面向对象的语言,用户可利用它轻松创建类并设定数据的使用范围,不必为复杂的语法而烦恼。
事实上,当我用Python重新编写几年前用Java编写的程序时,我为Python的简单易用感到惊叹。同时,Python强大的集成开发环境(IDE),大大减少了程序编写的错误。
当我用Python很快就能完成任务时,我意识到是时候写一本关于Python的书了。我用Python重新编写了全新、干净、可读的23个经典设计模式。
由此就诞生了本书。它展示了面向对象编程的基础知识、可视化编程,以及如何使用经典设计模式。读者可以在https://github.com/jwcnmr/jameswcooper/tree/main/Pythonpatterns上找到相关程序的代码。
本书旨在帮助Python程序爱好者拓宽面向对象编程(OOP)和设计模式的相关知识。
如果读者是一位Python编程的新手,可以直接学习第31章至第35章的Python基础知识,再返回从第1章开始学习。
如果读者是一位有经验的Python编程人员,可以从第1章开始学习面向对象编程和设计模式的相关知识,按个人喜好,也可以跳过第2章和第3章,直接学习后面的内容。
Python是所有编程语言中容易学习的一门语言,通过设计模式的运用,创建各种对象也十分容易。随后,读者将了解到对象可以做什么以及在工作中如何使用对象。
在任何情况下,面向对象编程的方法都有助于读者编写更好的、更容易被重复利用的程序代码。
本书结构
本书由以下五个部分构成。
第一部分?设计模式基础
实质上,设计模式描述的是对象间的有效互动。本书第1章介绍对象的相关内容,并提供图形化实例来演示模式是如何工作的。
第2章和第3章介绍Python可视化编程工具——tkinter库,以创建窗口、按钮、列表、表格等对象。
第4章介绍设计模式的定义及其相关内容。
第二部分?创建型模式
第5章介绍基本的工厂模式,它是第6章的基础。
第6章介绍工厂方法模式。在此模式中,父类将创建实例对象的决定交给每个子类。
第7章介绍抽象工厂模式。抽象工厂模式是一个工厂对象,它返回几个组类之一。
第8章介绍单例模式,它描述一个类中不能有多个实例。单例模式提供了实例的单个全局访问点。该模式并不常用,但了解该模式的使用非常有帮助。
第9章介绍生成器模式,该模式将复杂对象的构造与其可视化表示分开,以便根据程序的需要创建几种不同的表示形式。
第10章介绍原型模式,展示通过原型模式创建一个类实例是多么耗时且复杂。对于复杂对象,通常需要复制原始实例对象并酌情做出修改,而不是创建多个实例。
第11章总结第二部分的模式。
第三部分?结构型模式
第12章介绍适配器模式,该模式用于将一个类的编程接口转换到另一个类的编程接口。适配器在不相关的多个类在同一个程序中协同工作时非常有用。
第13章介绍桥接模式,该模式能够在不更改客户端代码的情况下改变或更换类的实现代码。
第14章介绍组合模式,该模式适应组件是单个对象或代表对象的集合。这两种情况通常采用树状结构。
第15章介绍装饰器模式,该模式提供了一种用户可修改单个对象的行为而不必创建新的派生类的方法。该模式虽然可以应用于按钮等可视化对象,但在Python中常见的用途是创建一种修改单个类实例行为的宏。
第16章介绍外观模式,我们学习使用外观模式来编写一个简化的代码接口。
第17章介绍享元模式,该模式用于同一个类有多个实例的情况,通过将一些数据移到类外,可减少对象的数量。
第18章介绍代理模式,该模式可用更简单的对象来表示复杂对象或用于创建耗时的对象。如果创建一个对象需要花费大量时间或占用大量计算机资源,那么可以通过代理在需要实际对象时再创建。
第19章总结第三部分的模式。
第四部分?行为型模式
第20章介绍责任链模式,该模式展示请求如何从链中的一个对象传递到下一个对象,直到请求被识别,实现对象之间的解耦。
第21章介绍命令模式,该模式展示命令模式如何使用简单的对象执行软件命令。此外,该模式支持日志的记录和可撤销操作。
第22章介绍解释器模式,该模式展示如何创建一种小的执行语言,并将其包含在应用程序中的定义。
第23章介绍迭代器模式,该模式描述遍历对象集合中的元素的方法。
第24章介绍中介者模式,该模式通过使用独立的对象来简化对象之间的通信,使所有对象之间不必相互了解。
第25章介绍备忘录模式,该模式保存对象的内部状态,以便用户以后可以恢复对象信息。
第26章介绍观察者模式,该模式允许用户在程序状态发生变化时,将更改通知给多个对象。
第27章介绍状态模式,该模式允许对象在内部状态发生变化时修改其行为。
第28章介绍策略模式,该模式与状态模式类似,不需要任何整体的条件语句即可在算法之间轻松切换。策略模式与状态模式之间的区别在于,在策略模式下,用户通常从几种策略中选择应用哪一种。
第29章介绍模板方法模式。该模式在类中形式化定义算法的构思,并在子类中实现具体的细节。
第30章介绍访问者模式。该模式反转了面向对象的模型,并创建一个外部类用于与其他类中的数据进行交互。
第五部分?Python基础知识
第31章回顾基本的Python变量和语法。
第32章以实例的方式展示应用程序如何做决策。
第33章简要总结几种常见的Python开发环境。
第34章讨论集合和文件。
第35章讨论如何在Python中使用函数。
本书提供了23种经过验证的的、可视化、示例驱动的模式,涉及抽象类、多重继承、GUI编程和小部件、图形类、绘图和绘图、数学、数据库、Python装饰器、图像、线程、迭代器、创建可执行代码等,从而编写更加健壮、高效、可维护和优雅的Python代码,生成功能强大、灵活的程序。
目 录
第一部分设计模式基础 1
tkinter库 2
GitHub 2
第1章?对象简介 5
类__init__方法 6
类内部的变量 6
类的集合 7
继承 8
用修正方法创建继承类 8
多重继承 8
绘制矩形和正方形 10
变量的可见性 12
属性 13
局部变量 13
Python中的变量类型 13
总结 14
GitHub中的程序 15
第2章?Python可视化编程 17
导入少量名字 19
面向对象的程序 19
使用消息框 21
使用文件对话框 22
理解pack布局管理器选项 23
使用ttk库 24
响应用户输入 25
两个数字相加 26
捕获错误 26
运用tkinter中的颜色 27
创建单选按钮 27
使用类级别的变量 30
类之间的通信 30
使用Grid布局 30
创建复选按钮 32
禁用Check框 34
在窗口中添加菜单项 35
使用Label Frame控件 39
继续移动 40
GitHub中的程序 40
第3章?数据表格的可视化编程 41
创建列表框 42
显示状态数据 44
使用组合框 46
树视图组件 47
插入树节点 50
继续移动 51
GitHub中的程序 51
第4章?设计模式 53
定义设计模式 54
学习步骤 55
面向对象方法的说明 56
Python设计模式 57
参考资料 57
第二部分?创建型模式 59
第5章?工厂模式 61
工厂模式简介 61
案例代码 62
两个子类 62
创建简单的工厂模式 63
使用工厂 63
一个简单的图形用户界面 64
数学运算中的工厂模式 65
GitHub中的程序 65
问题思考 66
第6章?工厂方法模式 67
Swimmer类 68
Event类 69
StraightSeeding类 70
CircleSeeding类 71
创建Seeding程序 72
其他工厂 74
使用工厂方法模式的场景 74
GitHub中的程序 74
第7章?抽象工厂模式 75
GardenMaker工厂 75
花园规划界面 77
抽象工厂模式总结 77
问题思考 78
GitHub中的程序 78
第8章?单例模式 79
抛出异常 80
创建一个类示例 80
单例模式的静态类 81
在大型程序中查找单例 81
单例模式总结 82
GitHub中的程序 82
第9章?生成器模式 83
投资跟踪器 84
调用生成器 86
列表框生成器 87
复选框生成器 88
显示选定证劵 89
生成器模式总结 89
问题思考 89
GitHub中的程序 89
第10章?原型模式 91
Python中的克隆 91
使用原型 92
原型模式总结 94
GitHub中的程序 94
第11章?创建型模式总结 95
第三部分?结构型模式 97
第12章?适配器模式 99
列表之间的数据移动 99
创建一个适配器 101
类适配器 103
双向适配器 103
可插式适配器 103
GitHub中的程序 103
第13章?桥接模式 105
创建用户界面 107
扩展桥 107
桥接模式总结 109
GitHub中的程序 110
第14章?组合模式 111
组合结构的实现 112
工资的计算 112
Employee类 112
Boss类 113
创建员工树 114
打印员工树 114
创建树视图 116
使用双向链表 117
组合模式总结 118
一个简单的组合 119
组合模式的实现 119
处理递归调用 119
排序组件 120
缓存结果 120
GitHub中的程序 120
第15章?装饰器模式 121
装饰按钮 121
使用装饰器 122
使用非可视化装饰器 123
装饰代码 124
数据类装饰器 125
数据类处理默认值 126
装饰器、适配器和组合实体 126
装饰器模式总结 126
GitHub中的程序 127
第16章?外观模式 129
创建外观类 131
创建数据库和表格 135
使用SQLite 136
外观模式总结 137
GitHub中的程序 137
关于MySQL的注释 137
使用SQLite 138
参考资料 138
第17章?享元模式 139
享元 139
程序示例 140
选择文件夹 142
写入时复制对象 143
GitHub中的程序 143
第18章?代理模式 145
使用Python图像库(PIL) 145
使用PIL显示图像 146
使用多线程加载图像 146
多线程日志 149
写入时复制 149
对比相关模式 149
GitHub中的程序 150
第19章?结构型模式总结 151
第四部分?行为型模式 153
第20章?责任链模式 155
责任链模式的使用场景 156
程序示例 156
列表框 159
编写帮助系统 160
接收帮助命令 161
第一个案例 162
链或树 163
请求的种类 164
责任链模式总结 164
GitHub中的程序 165
第21章?命令模式 167
命令模式的使用场景 167
命令对象 168
键盘示例 168
调用命令对象 170
创建命令对象 171
命令模式介绍 172
命令模式总结 172
撤销操
本书提供了23种经过验证的的、可视化、示例驱动的模式,涉及抽象类、多重继承、GUI编程和小部件、图形类、绘图和绘图、数学、数据库、Python装饰器、图像、线程、迭代器、创建可执行代码等,从而编写更加健壮、高效、可维护和优雅的Python代码,生成功能强大、灵活的程序。
本书的可视化演示使模式更易于使用,同时使读者可以利用Python丰富的函数构建复杂程序。
— 没有更多了 —
以下为对购买帮助不大的评价