Python高手之路(第3版) 封面

Python高手之路(第3版)

暂无评分
章节数
40
ISBN
9787115437105

标签

内容简介

《Python高手之路(第3版)》是法国自由软件开发者朱利安·丹乔(Julien Danjou)写给已有一定 Python 使用经验读者的进阶读物,原书译为《The Hacker's Guide to Python》。本书并不讲解 Python 语法入门知识,它的出发点是:能写出能运行的脚本的人很多,但能把 Python 写成可维护、可分发、可测试的工程项目,需要的是另一类经验。作者长期参与 Debian、GNU Emacs、awesome 窗口管理器以及 OpenStack Ceilometer 项目,其中在 OpenStack 这样拥有上百万行 Python 代码、数百名开发者的项目中工作,让他系统总结了工程化使用 Python 的实践。全书从启动一个新项目所涉及的组织结构、版本编号与编码风格谈起,接着讲模块与库的管理、API 变化的处理、时区陷阱、文档编写与 Sphinx 使用、打包分发、虚拟环境、单元测试与模拟、装饰器与方法机制、函数式编程、抽象语法树、性能优化、插件化架构、RDBMS 与 ORM,以及 Python 3 的支持策略,最后以“少即是多”的原则收束,并附延伸阅读建议。书中还穿插了对多位开源社区专家的访谈。本版本为第3版中译本,由王飞龙翻译,全书 216 页。

编辑推荐

市面上讲 Python 的书,大多花大量篇幅在做“如何写”这件事:语法、类型、控制流、标准库。真正让人卡住的往往不是这些,而是项目做大之后的另一类问题——代码怎么组织、版本怎么发、文档怎么生成、测试怎么写、性能从哪里下手、要不要给旧接口做兼容。《Python高手之路》恰好补的就是这一段空白,而且补得很实在:作者不是站在讲台上总结方法论,而是在 OpenStack 这样的超大代码库里踩过坑之后把经验写下来。它的章节顺序也很有意思,从“项目开始”一路走到“分发”“文档”“测试”“性能”“架构”,几乎就是一个 Python 项目的完整生命周期。第3版更新了与 Python 3 相关的支持策略与工具链内容,篇幅仍然控制在两百多页,不厚,不拖泥带水。译文流畅,术语处理稳妥。对于已经能写脚本、但还不确定一个“正经的 Python 项目”该长什么样的开发者,这本书能帮你把很多零散的做法连成体系。

适合谁读

适合

  • 已掌握 Python 基础语法、能独立写脚本,想进阶到工程化开发的人
  • 需要维护长期演进的项目,正在被版本、文档、测试问题困扰的开发者
  • 参与或准备参与 OpenStack 等大型开源项目的工程师
  • 想了解 Python 打包分发、插件化架构与性能优化做法的技术负责人

不适合

  • 完全没有编程基础、想从零学 Python 语法的读者
  • 只想查标准库用法、寻找 API 速查手册的人
  • 希望书里有大量完整商业级项目实战案例的读者

阅读建议

  1. 先通读第1到第7章,把项目结构、打包分发、虚拟环境的链条搭起来,这是全书的地基。
  2. 第8章单元测试与第12章性能优化最值得逐字精读,并对着自己现有的代码动手重写一遍。
  3. 第9至11章涉及装饰器、函数式编程与 AST,可先了解概念,遇到相关需求时再回来细读。
  4. 书中专家访谈部分可当补充读物,顺着访谈里提到的开源项目去读源码,收获会比预期大。

出版社简介

人民邮电出版社 中国 · 成立于 1953 年

人民邮电出版社以科技、计算机与信息通信类图书见长,并由此延伸至摄影、艺术、软件学习与励志成长等门类,形成较为多元的出版方向。库内图书既涵盖《重构与模式(修订版)》《华为交换机学习指南(第二版)》等计算机与通信技术读物,也收录《小王子(中英法彩绘典藏纪念版)》《了不起的盖茨比》《假如给我三天光明》等双语典藏类作品;《北京十年:1980-1990》与《鬼刀 WLOP个人插画作品集》则体现其在摄影与艺术领域的布局。作者资源包括安东尼·圣埃克苏佩里、海伦·凯勒、Joshua Kerievsky、王达、张兆增与WLOP等。

目录

  1. 第1章 项目开始
  2. 1.1 Python版本
  3. 1.2 项目布局
  4. 1.3 版本编号
  5. 1.4 编码风格与自动检查
  6. 第2章 模块和库
  7. 2.1 导入系统
  8. 2.2 标准库
  9. 2.3 外部库
  10. 2.4 框架
  11. 第3章 管理API变化
  12. 第4章 时区陷阱
  13. 第5章 文档
  14. 5.1 Sphinx和reST入门
  15. 5.2 Sphinx模块
  16. 5.3 扩展Sphinx
  17. 第6章 分发
  18. 6.1 简史
  19. 6.2 使用pbr打包
  20. 6.3 Wheel格式
  21. 6.4 包的安装
  22. 6.5 和世界分享你的成果
  23. 6.7 入口点
  24. 第7章 虚拟环境
  25. 第8章 单元测试
  26. 8.1 基础知识
  27. 8.2 fixture
  28. 8.3 模拟(mocking)
  29. 8.4 场景测试
  30. 8.5 测试序列与并行
  31. 8.6 测试覆盖
  32. 8.7 使用虚拟环境和tox
  33. 8.8 测试策略
  34. 第9章 方法和装饰器
  35. 9.1 创建装饰器
  36. 9.2 Python中方法的运行机制
  37. 第10章 函数式编程
  38. 第11章 抽象语法树
  39. 第12章 性能与优化
  40. 第13章 扩展与架构

常见问题

这本书适合零基础学 Python 的人吗?
不适合。作者在开篇就假定读者已经使用 Python 一段时间了,书中没有关键字讲解,也没有 for 循环示例,更不会细讲标准库。零基础读者应先看入门教材,再回到这本书。
书名里的“高手”是指语法高手吗?
不是。这本书讲的是工程实践能力:项目结构、模块管理、文档、分发、虚拟环境、测试、性能与架构。作者认为这些才是从“会写”到“写得好”的分水岭。
第3版和之前版本有什么区别?
据作者前言,第3版根据第1版发布后的变化做了更新,补充了 Python 3 支持策略等内容。中译本为人民邮电出版社 2016 年出版,王飞龙翻译,共 216 页。
书里为什么要讲 OpenStack?
作者是 OpenStack 项目 Ceilometer 的技术负责人,在数百名开发者、上百万行代码的项目中工作,让他看到自动化测试、文档、分发在真实规模下为何必不可少,书中的经验多来自这一背景。
读完能解决实际项目里的什么问题?
比较典型的是:项目目录怎么摆、包怎么发到 PyPI、文档如何用 Sphinx 生成、测试怎么组织用 tox、出了问题怎么定位性能瓶颈、插件化架构如何设计。这些都能直接套到自己的项目上。

读者评论

查询本书

本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。

同类高分