geekdoc-python-zh/docs/pythonlibrary/book-review-mastering-objec...

4.9 KiB
Raw Blame History

书评:掌握面向对象的 Python

原文:https://www.blog.pythonlibrary.org/2014/05/02/book-review-mastering-object-oriented-python/

Packt Publishing 邀请我担任他们最新的 Python 书籍之一的技术评论员Steven Lott 的《掌握面向对象的 Python》。这本书是他们 2010 年版本的续篇,由 Dusty Phillips 写的 Python 3 面向对象编程,我在这里评论了

注意:这本书显然是给 Python 3 开发者看的,而根本没怎么谈论 Python 2。


快速回顾

  • 我选择它的原因:出版商邀请我参与编辑这本书,但这正是我喜欢读的书
  • 我完成它的原因:它写得很好,你可以学到很多关于类内部是如何工作的
  • **我想把它给:**一个想学习新事物的中级 Python 程序员

图书格式

你可以得到这本书的平装本、epub、mobi 或 PDF。


书籍内容

这本书分成 3 部分或 18 章。


全面审查

这是 Packt 最好的书之一,也是我读过的最好的高级 Python 书籍之一。让我们花点时间来讨论一下这些章节。这本书是基于赌场 21 点的概念,这是一个奇怪的编程书籍的主题。无论如何,作者使用它和其他几个例子来帮助演示 Python 中一些相当高级的主题。第一章都是关于 Python init() 方法。它向读者展示了如何在超类和工厂函数中使用 init。第二章跳转到 Python 的所有基本的特殊方法,比如 reprformathash,等等。在前几章中,你会学到很多关于元编程的知识。

第 3 章深入探讨了属性、特性和描述符。您将学习如何使用 slots,创建不可变的对象,以及使用“热切的计算机属性”。第 4-6 章是关于创建和使用可调用、上下文和容器的。有关于内存化、创建自定义可调用程序、如何使用 enter / exit、使用集合模块(deque、ChainMap、OrderedDict 等)的信息,还有更多!第 7 章谈到创建你自己的号码,这是我从未考虑过的事情。作者承认你通常也不会这样做,但是他确实教了读者一些有趣的概念(数字散列和就地操作符)。第 8 章以装饰者和混合者的信息结束了第 1 部分。

第 2 部分是关于持久性和序列化的。第九章重点介绍 JSON、YAML 和 Pickle。作者倾向于 YAML所以在这一节你会看到很多使用它的例子。第 10 章深入探讨了使用 Python shelve 对象和使用与复杂对象相关的 CRUD 操作。第 11 章是关于 SQLite 的。第 12 章将详细介绍如何使用 Python 创建 REST 服务器和 WSGI 应用程序。第 13 章涵盖了使用 Python、JSON、YAML 和 PLIST 的配置文件,从而完成了第 2 部分。

本书的最后一部分涵盖了测试、调试、部署和维护。它直接跳到了第 14 章关于日志和警告模块的主题。第 15 章详细介绍了如何用 Python 创建单元测试和文档测试。第 16 章讲述了通过 argparse 使用命令行选项和创建 main()函数。在第 17 章,我们学习如何设计模块和包。这本书的最后一章讲述了质量保证和文档。您将学习一些关于 RST 标记语言和 Sphinx 的知识,用于创建文档。

我发现第一部分是这本书最有趣的部分。我学到了很多关于类如何工作、元编程技术以及可调用函数和函数之间的区别的知识。我认为这本书就这一部分而言值得购买!第 2 部分也有很多有趣的内容,尽管我质疑作者坚持使用 YAML 而不是 JSON。我也不明白为什么 PLIST 会被包含在配置文件类型中。第三部分对我来说有点仓促。章节不够详细,例子也不够有趣。另一方面,我可能有点厌倦了,因为这部分主要是我已经知道的材料。总的来说,我发现这是我在过去几年中读过的最好的 Python 书籍之一。我肯定会把它推荐给任何想了解 Python 内部,尤其是 Python 的“神奇方法”的人。

| masteringPythonOOP |

掌握面向对象的 Python

史蒂文·f·洛特**[亚马逊](http://www.amazon.com/gp/product/1783280972/ref=as_li_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1783280972&linkCode=as2&tag=thmovsthpy-20&linkId=C535EKMPDQIEEOS4 target=)**打包发布 |


其他书评

  • 达斯丁·菲利普斯用 Kivy 语言创建应用程序
  • Roberto Ulloa 的 Python 交互式应用
  • Ron DuPlain 开发的
  • 弗莱彻·海斯勒的《真正的蟒蛇》
  • 达斯丁·菲利普斯的 Python 3 面向对象编程