我写完了《Python 工匠》一书的初稿
去年 6 月底,在写完“Python 工匠”系列的最近一篇文章“在边界处思考”后,我在写作上陷入了迷茫。我迷茫的点在于,我不知道是否该继续写下去,如果写,我又该写点什么东西? 当然并不是真的没内容可写。关于编程和 Python 的话题何其多,我写过的内容只是沧海一粟。异步编程、 … … View more
有关单元测试的 5 个建议
虽然好像人人都认为单元测试很有用,但在实际工作中,有完善单元测试的项目仍然是个稀罕物。大家拒绝写单元测试的理由总是千奇百怪:“项目工期太紧,没时间写测试了,先这么用吧!”“这模块太复杂了,根本没法写测试啊!”“我提交的这个模块太简单了,看上去就不可能有 bug,写单元测试干嘛?” … … View more
Python 工匠:在边界处思考
前言 这是 “Python 工匠”系列的第 15 篇文章。[查看系列所有文章] 2016 年,Linux 操作系统的创造者 Linus Torvalds 参加了一场 TED 访谈节目。整个节目的前半部分,主要是他在讲如何在家光着膀子写出 Linux 的故事,没有涉及太 … … View more
游戏《蔚蓝山》教我的编程道理
如果有这么一款游戏,你操作的角色平均每 20 秒就会死亡一次,正常通关一次,总共需要死掉超过 2000 次。你猜这是一款神作还是垃圾? 《Celeste》(译名:“蔚蓝山”)就是这么一款游戏。在游戏里,你扮演一个名为 Madeline 的女孩,通过跳跃、抓墙、冲刺等动作,去努力 … … View more
Python 工匠:写好面向对象代码的原则(下)
前言 这是 “Python 工匠”系列的第 14 篇文章。[查看系列所有文章] 在这篇文章中,我将继续介绍 SOLID 原则剩下的两位成员:I(接口隔离原则) 和 D(依赖倒置原则)。为了方便,这篇文章将会使用先 D 后 I 的顺序。 D:依赖倒置原则 软件是由一个个 … … View more
Python 工匠:写好面向对象代码的原则(中)
前言 这是 “Python 工匠”系列的第 13 篇文章。[查看系列所有文章] 在 上一篇文章 里,我用一个虚拟小项目作为例子,讲解了“SOLID”设计原则中的前两位成员:S(单一职责原则)与 O(开放-关闭原则)。 在这篇文章中,我将继续介绍 SOLID 原则的第三 … … View more
Python 工匠:写好面向对象代码的原则(上)
前言 这是 “Python 工匠”系列的第 12 篇文章。[查看系列所有文章] Python 是一门支持多种编程风格的语言,面对相同的需求,拥有不同背景的程序员可能会写出风格迥异的 Python 代码。比如一位习惯编写 C 语言的程序员,通常会定义一大堆函数来搞定所有 … … View more
Python 工匠:高效操作文件的三个建议
前言 这是 “Python 工匠”系列的第 11 篇文章。[查看系列所有文章] 在这个世界上,人们每天都在用 Python 完成着不同的工作。而文件操作,则是大家最常需要解决的任务之一。使用 Python,你可以轻松为他人生成精美的报表,也可以用短短几行代码快速解析、 … … View more