- ISBN:9787111740032
- 装帧:平装-胶订
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:238
- 出版时间:2023-12-01
- 条形码:9787111740032 ; 978-7-111-74003-2
本书特色
本书基于Python的23种设计模式,展示了面向对象的基础知识、可视化编程,以及如何使用“创建型模式”、“结构型模式”、”行为型模式“,旨在帮助Python程序爱好者拓宽面向对象编程知识和设计模式相关技能,轻松解决各种复杂的编程问题。本书配有大量清晰直观的可执行代码实例,让读者快速掌握Python语言并轻松实现各种对象不费吹灰之力。
内容简介
本书提供了23种经过验证的的、可视化、示例驱动的模式,涉及抽象类、多重继承、GUI编程和小部件、图形类、绘图和绘图、数学、数据库、Python装饰器、图像、线程、迭代器、创建可执行代码等,从而编写更加健壮、高效、可维护和优雅的Python代码,生成功能强大、灵活的程序。
目录
译者序
前 言
**部分 设计模式基础
第1章 对象简介 3
类的__init__方法 4
类的局部变量 4
类的集合 4
继承 5
创建派生类 6
多重继承 6
绘制矩形和正方形 7
变量的可见性 8
局部变量 9
Python中的变量类型 10
总结 11
GitHub中的程序 11
第2章 Python可视化编程 12
导入少量名字 13
面向对象的程序 14
使用消息框 15
使用文件对话框 16
理解pack布局管理器选项 16
使用ttk库 17
响应用户输入 18
运用tkinter中的颜色 20
创建单选按钮 20
类之间的通信 22
使用grid布局 23
创建复选按钮 24
在窗口中添加菜单项 26
使用LabelFrame组件 29
GitHub中的程序 30
第3章 数据表格的可视化编程 31
创建列表框 32
使用组合框 35
树视图组件 36
GitHub中的程序 38
第4章 设计模式 39
定义设计模式 40
学习步骤 40
面向对象方法说明 40
参考文献 41
第二部分 创建型模式
第5章 工厂模式 45
工厂模式简介 45
定义基类 46
两个子类 46
创建简单的工厂模式 47
数学运算中的工厂模式 48
GitHub中的程序 49
问题思考 49
第6章 工厂方法模式 50
Swimmer类 51
Event类 52
StraightSeeding类 53
CircleSeeding类 54
创建Seeding程序 54
EventFactory类 56
工厂方法模式的使用场景 56
GitHub中的程序 57
第7章 抽象工厂模式 58
GardenMarker工厂 58
花园规划界面 60
抽象工厂模式总结 60
问题思考 60
GitHub中的程序 60
第8章 单例模式 61
抛出异常 62
创建一个类实例 62
单例模式的静态类 63
在大型程序中查找单例 63
单例模式总结 63
GitHub中的程序 63
第9章 生成器模式 64
投资跟踪器 64
调用生成器 66
生成器模式总结 69
问题思考 69
GitHub中的程序 69
第10章 原型模式 70
Python中的克隆 70
使用原型 71
原型模式总结 73
GitHub中的程序 73
第11章 创建型模式总结 74
第三部分 结构型模式
第12章 适配器模式 77
列表之间的数据移动 77
创建一个适配器 79
GitHub中的程序 81
第13章 桥接模式 82
创建用户界面 84
扩展桥 84
桥接模式总结 86
GitHub中的程序 86
第14章 组合模式 87
组合结构的实现 88
工资的计算 88
Employee类 88
Boss类 89
创建员工树 89
打印输出员工树 90
创建树视图 91
使用双向链表 93
组合模式总结 94
组合模式的实现 94
GitHub中的程序 95
第15章 装饰器模式 96
装饰按钮 96
使用装饰器 97
使用非可视化装饰器 98
数据类装饰器 99
使用数据类装饰器处理默认值 100
装饰器、适配器以及组合实体 100
装饰器模式总结 101
GitHub中的程序 101
第16章 外观模式 102
创建外观类 104
创建数据库和表格 107
使用SQLite 108
外观模式总结 109
GitHub中的程序 109
关于MySQL 109
参考资料 110
第17章 享元模式 111
享元 111
程序示例 112
写入时复制对象 114
GitHub中的程序 115
第18章 代理模式 116
使用Python图像库(PIL) 116
使用PIL显示图像 117
使用多线程加载图像 117
多线程日志 119
写入时复制 119
对比相关模式 119
GitHub中的程序 120
第19章 结构型模式总结 121
第四部分 行为型模式
第20章 责任链模式 125
责任链模式的使用场景 126
程序示例 126
列表框 128
编写帮助系统 129
接收帮助命令 130
检查 130
责任链的树结构 131
请求的种类 132
责任链模式总结 132
GitHub中的程序 132
第21章 命令模式 133
命令模式的使用场景 133
命令对象 134
键盘实例 134
调用命令对象 136
创建命令对象 136
命令模式介绍 137
命令模式总结 137
撤销操作 138
总结 140
参考资料 140
GitHub中的程序 141
第22章 解释器模式 142
解释器模式的使用场景 142
简单的报表实例 143
解释语言 143
语句解析 145
控制台界面 147
用户界面 148
解释器模式总结 148
GitHub中的程序 149
第23章 迭代器模式 150
迭代器模式简介 150
for循环迭代器 151
斐波那契迭代 151
筛选迭代器 152
用生成器创建迭代器 154
斐波那契迭代器 154
类中的生成器 155
迭代器模式总结 155
GitHub中的程序 156
第24章 中介者模式 157
中介者模式示例 157
控件间的交互 158
程序示例 159
中介者及命令对象 160
中介者模式总结 161
单接口中介者 161
GitHub中的程序 161
第25章 备忘录模式 162
备忘录模式的使用场景 162
程序示例 163
备忘录模式总结 167
GitHub中的程序 167
第26章 观察者模式 168
观察颜色变化的程序示例 169
给观察者发送信息 171
观察者模式总结 171
GitHub中的程序 172
第27章 状态模式 173
程序示例 173
状态间的切换 176
中介者与状态管理器交互 177
状态模式总结 178
状态转换 179
GitHub中的程序 179
第28章 策略模式 180
策略模式简介 180
程序示例 181
上下文 182
命令按钮 182
折线图和柱状图策略 182
策略模式总结 184
GitHub中的程序 185
第29章 模板方法模式 186
模板方法模式简介 186
模板类方法 187
程序示例 187
绘制三角形的程序 189
模板与回调方法 190
模板方法模式总结 191
GitHub中的程序 191
第30章 访问者模式 192
访问者模式的使用场景 192
程序示例 193
访问类 195
同时访问经理和员工 196
二次分发 197
遍历系列类 197
访问者模式总结 197
GitHub中的程序 198
第五部分 Python基础知识
第31章 Python中的变量和语法 201
数据类型 201
数字常量 202
字符串 202
字符常量 203
变量 204
复数 204
整数除法 205
用于初始化的等号 205
一个简单的Python应用程序 206
编译和运行程序 206
算术运算符 206
复合运算符和赋值语句 207
比较运算符 208
输入语句 208
PEP 8标准 209
第32章 Python中的判定语句 212
条件判定语句 212
组合条件 213
常见错误 213
循环语句 213
中断与继续语句 215
每行长度 215
打印输出函数 216
格式化数字 217
格式化日期 219
匹配函数 219
参考资料 221
GitHub中的程序 221
第33章 Python开发环境 222
IDLE 222
Thonny 222
PyCharm 223
Visual Studio 223
其他开发环境 223
命令行执行 225
CPython、IPython和Jython 225
第34章 Python的集合和文件 226
切片 226
切片字符串 227
改变列表内容 228
复制列表 229
读取文件 229
处理异常 231
使用字典 231
使用元组 233
使用集合 233
使用map函数 234
编写一个完整的程序 234
使用列表推导 235
GitHub中的程序 236
第35章 函数 237
返回一个元组 238
应用程序执行 238
总结 239
GitHub中的程序 239
作者简介
詹姆斯·W. 库珀
(James W. Cooper)
拥有博士学位,他曾在学术界、科学仪器行业和IBM工作超过25年,曾担任IBM的Thomas J.Watson研究中心的计算机科学家,拥有11项专利,著有20余本书,包括3本关于多种语言的设计模式
的书。
-
深度学习的数学
¥43.5¥69.0 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥31.9¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥76.3¥109.0 -
UG NX 12.0数控编程
¥22.1¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥83.3¥119.0 -
Visual Basic 语言程序设计基础(第6版)
¥32.0¥45.0 -
贝叶斯推理与机器学习
¥139.3¥199.0