关于进阶这件事,这位Python大佬有话说

上世纪90年代末,一位爱看计算机杂志的骄傲少年在机缘巧合下,参加了一场技术聚会。“当时我就震惊了!”这位少年后来说道。除了自己,他发现聚会上的其他人似乎都学识渊博。关于那些被热烈讨论的编程知识,他只能点头附和,完全插不上话。

回到家后,这位少年下定决心要恶补编程知识,至少要在下一次聚会时插得上话啊!日复一日、月复一月,他在浩瀚的代码海洋里挣扎。当下一次技术聚会终于来临时,他仍然只能点头附和。正所谓学海无涯,上岸太难……

所幸,这位少年最终脱离了苦海,并成长为 Python 意见领袖。他就是 Al Sweigart。
关于进阶这件事,这位Python大佬有话说_第1张图片
Python大佬Al Sweigart

要说Python社区的大佬,Al Sweigart绝对算得上一位。他是Python软件基金会的Fellow,也是非常活跃的Python知识传播者。Al Sweigart 的 YouTube 频道有 10 万以上的粉丝,他的 Python 在线课程则已覆盖全球 100 万以上的学生。

或许,你更熟悉他的 Python 入门书《Python编程快速上手》(Automate the Boring Stuff with Python)——原版封面上写着销量已超 50 万册。但正如他说的,即便是他自己,在试图沿着编程之路走得更远时,也难免磕磕绊绊。

“软件开发远不止循环和函数。一旦你学完入门教程或者读完编程入门书,试图探寻进阶法门时,却总是会兜兜转转找到另外一个Hello World级别的入门引导。你在不同的学习材料之间漫无目的地徘徊,感觉自己毫无长进。你早就不是初学者了,但经验又少得可怜,根本没法处理复杂一些的问题。”Al Sweigart太熟悉这种感觉了。他把这个阶段称为程序员的“绝望沙漠”。

如果你正艰难地行走在这个“绝望沙漠”中,那么好消息是,Al Sweigart 专门写了一本书来引领你找到走出沙漠的路。这本书适合谁这本书旨在成为你在Python进阶路上的引路人。如果你刚学完《Python编程:从入门到实践(第2版)》(蟒蛇书)或者 Al Sweigart 的Python入门书《Python编程快速上手》,渴望进一步提升Python知识,那么你就是这本书的最佳读者。

你可以学到什么

01 正确提问

哎呀!你好不容易写的程序又报错了。这个时候,你很容易对计算机产生怨气。虽然花了几个月的时间学习Python,但仍需要频繁地从网上搜索答案,这很容易让人产生挫败感。不过请记住,即使是专业的程序员,也需要通过在网上搜索或者查阅文档来解决编程中遇到的麻烦。Stack Overflow的调查甚至显示,有62%的程序员每天会花半小时以上的时间在网上查找解决问题的方法[1]。如果理解Python的报错消息,并高效地在网上寻求帮助,绝对值得好好学习。这本书用了一章的篇幅来帮你获得这项必备技能。

02 写可读性强的代码

如果你发现同事写了一个名为gooseDownload() 的函数,你会作何反应?你们的项目准备提供大鹅下载功能吗?

当然不是!Al Sweigart 在书中讲了他的亲身经历。原来,写这个函数的同事希望通过该函数加快产品的下载速度,而少有人知道,goose 可以作为动词,比如 goose the engine 的意思是让发动机转得更快。

命名有什么讲究,又有什么陷阱?在为变量、函数、类等编程中的元素命名时,简洁而有描述意义的名称能够大大提升程序代码的可读性。这其中有哪些巧妙的方法?Al Sweigart 在这本书中为你娓娓道来。

03 代码的底层逻辑

Al Sweigart 在书中使用了 Python Tutor,这是一个便捷的在线代码可视化工具,可以帮助你逐行理解代码的底层逻辑。来看一个例子。
关于进阶这件事,这位Python大佬有话说_第2张图片

04 更多内容助你从新手到高手

目录第一部分 起步第 1 章 处理错误和寻求帮助第 2 章 环境设置和命令行第二部分 最佳实践、工具和技巧第 3 章 使用 Black 进行代码格式化第 4 章 选择易懂的名称第 5 章 揪出代码的坏味道第 6 章 编写Python风格的代码第 7 章 编程术语第 8 章 常见的Python陷阱第 9 章 Python的奇特难懂之处第 10 章 编写高效的函数第 11 章 注释、文档字符串和类型提示第 12 章 通过Git管理项目第 13 章 性能测量和大O算法分析第 14 章 项目实战第三部分 面向对象的Python第 15 章 面向对象编程和类第 16 章 面向对象编程和继承第 17 章 Python风格的面向对象编程:属性和魔术方法

业内佳评

“对于Python新手,如果想让自己更上一层楼,那么这是难得的进阶书。”
——Kushal DasCPython核心开发者Python软件基金会董事

“这本书聚焦于三个主题:解决初级进阶的重重困难;Python实践、工具和技巧;面向对象编程。相比从多个学习资源中挖掘知识,读这本书更有用。”
——Serdar YegulalpInfoWorld专栏作家

你可能感兴趣的:(python进阶编程)