个体重构:将重构应用到生活中

  • Ben Linders
  • 刘嘉洋

2015 年 11 月 24 日

话题:敏捷重构语言 & 开发文化 & 方法

Bryan BeechamAgile Testing Days 2015敏捷测试大会上以个体重构作主旨发言。InfoQ 就个体重构如何帮助我们来改善我们的生活,它与代码重构的关系,为什么他认为健康饮食很重要,敏捷团队如何从中受益以及人们可以从哪里找更多关于自我提升和个体成长的信息这几个问题来采访他。

InfoQ:你能简单地向 InfoQ 的读者介绍一下个体重构吗?

Beecham: 个体重构是一种软件重构原理在人体上的运用。虽然个体重构与生物黑客有所类似,它还包括了一个不断完善的过程。通过这个不断完善的过程,我们能强健身心这种用来创建更优质软件所使用的技术可以运用在我们生活的很多方面,包括财务、学习能力以及绩效。一个经过个体重构完善的个体可以取得很多成效,这些成效能影响到他们的团队、公司以及社会。

InfoQ:你能举出几个个体重构有助于改善生活的例子吗?

Beecham: 举个最简单的例子就是能改进我们对食物的选择。在早晨叫人起床以及彻底改变一个人的饮食方式是很困难的。我们所能做的就是在你的日常饮食上做细微的改进。我们的每一个抉择都会产生或好或坏的影响。随着时间的推移,这些对自身有利的选择能使我们的生活变得更好。

InfoQ:你能详细的说明个体重构和重构代码的关系吗?

Beecham: 他们的共同点在于这两个过程都涉及改变系统,以改善内部结构和设计的方式,来最大限度地减少错误的引入。隐喻常常会运用在软件开发领域,这些相同的隐喻同样也可以帮助我们来改进自身的不足之处。我们可以通过诸如测试等一些技术手段帮助我们来实现我们的目标。重构的目的在于创造可以正常运行的整洁的代码。而个体重构的目的在于通过帮助人们改进自身的不足之处来挖掘内在潜能。

InfoQ:你有一些发布在HumanRefactor.com的博客内容是关于健康饮食的。请问你能解释一下为什么你认为它很重要呢?

Beecham: 你的身体就像一个建筑工地。只有当你提供材料之时,你才能在上面建造房子。好的建筑材料能造出更完美的建筑物。如果你缺少必要的材料,你的身体就会拆用自身其他的配件来填补空缺。在软件开发领域有这么一句俗语,“若输入错误数据,则输出亦为错误数据。”我会买诸如草饲牛肉、有机水果和有机蔬菜等昂贵的食物。我想成为我能做到的最棒的人。我经常会问别人这样一个问题,“你是想要生存还是要茁壮成长?”

InfoQ: 个体重构如何使敏捷团队受益?

Beecham: 一个好的团队可以有效地相互合作、相互影响。一个个体的改进可以导致一个团队的改进。就像结对编程和群体程式设计那样,在个体重构中,我鼓励人们把他们的同事、朋友和家人加入进来。我知道在加利佛尼亚州就有这样的一个团队,他们在午餐的时候一起行走并且在墙上贴了一张瘦身成果的汇总表。与从个体角度进行思考相比,当我们能从一个团队的角度进行思考,我们能取得更多成果。

InfoQ:如果人们想要了解更多关于自我提升和个体成长的资讯,有什么博客或者网站你能推荐他们去浏览吗?

Beecham: 我会推荐他们下面这三个比较好的资源:

尽管在网上能找到大量的资源,但对于刚开始了解这方面的资讯的人,这三个网站会更好。它涵盖了你想了解的所有的关于怎么编程和怎么生活的内容。

我也与他人一起工作,通过为他们量身定制个体重构的进程来单独指导他们。

查看英文原文:Human Refactoring: Applying Refactoring to Your Life


感谢张龙对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

敏捷重构语言 & 开发文化 & 方法