不要进入编码的孤岛中

mbti十六型人格 0 29

朋友们,我来啦~

今天这一章也比较简单,说的是要一起工作,要合作,要work together。

这一章的开头引用了一句话,莫名地很戳中我,所以也写上来分享给大家。

I’ve never met a human being who would want to read 17,000 pages of documentation, and if there was, I’d kill him to get him out of the gene pool.——Joseph Costello, President of Cadence

我从来没有见过一个愿意阅读17000页文件的人,如果有,我会杀了他,让他远离基因库。——约瑟夫·科斯特洛,Cadence总裁

相比于阅读冗长的文章、说明书、文档,我们更愿意和人打交道。所以,前面的章节也有提到,与其写事无巨细的需求文档,去找客户签字,不然,在开发的过程中,就把客户邀请进来,直接和他们进行沟通,他们也是团队的一部分。

不要进入编码的孤岛中

然后,作者介绍了两种不一样的开发方式:结对编程和暴徒编程。

结对编程(Pair programming)

结对编程,顾名思义,两个程序员,两两结对。

一个写代码,另一个看着。两个人一起讨论问题,并根据需要互换敲代码的角色。

这样做的好处:

1.不同的人,有不同的知识背景,不同的经验,不同的思考角度,可以提供不一样的想法和见解

2.人脑的带宽有限,当你专注写代码的时候,可能只能去思考当前代码的语法,编码风格这类比较低层的具体问题。

这时候有人可以从代码的细节中脱离出来,思考一些框架结构,代码设计之类更高层的问题。

3.基于「霍桑效应」,意识到自己正在被别人观察的个人具有改变自己行为的倾向。当有人在盯着我们写代码时,我们会把一些自由散漫收起来。

暴徒编程(Mob programming)

其实我觉得叫聚众编程更贴切一点,奈何大家都这么称呼,那就只能用通用的称呼,避免误解。

既然,两个人的脑子比一个人好用,那更多人的脑子理论上会更好用。所以,当我们遇到一些非常棘手的难题时,不妨把大家都聚集起来,成员可以包括但不仅限于开发人员、测试、产品、客户、供应商。

所谓三个臭皮匠,顶个诸葛亮。大家集思广益,很可能会想到一些,自己坐在那闷头想,想不出来的点子。这可能就是问题解决的关键。

我前几天就体验到了一次,多人讨论的益处,解决了一个,我思考了挺久未果的问题。

总结

不要进入编码的孤岛中

总的来说,独自编程、结对编程、暴徒编程,三种编程方式,各有各的益处。它们也不是非此即彼的关系,可以混合着使用。

所有的代码都用暴徒编程的方式来写,显然也不现实,大家也都有自己的事情要做。

不要进入编码的孤岛中

但如果你只使用其中的一种,不妨试试其他的方式。

比如,结对编程,可以先从一个小的,没那么困难的,没那么核心的模块开始尝试。一周尝试几次,一次1~2个小时。开始肯定别扭的,适应适应就好了。

比如,在暴徒编程中,每隔5~10分钟,就换掉敲代码的那个人。

我突然发现了,这种方式还有一种隐性的好处。那就是所有开发人员,都遵循同一套开发规范,并且,对其他人的代码也足够熟悉。不然根本没法换。

总之,不要进入编码的孤岛中,要多交流啊~

相关推荐:

网友留言:

我要评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。