关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » 程序人生 »代码质量:结对编程最不重要的理由

    代码质量:结对编程最不重要的理由

    2015-09-15 00:00:00 出处:ITJS
    分享

    Braintree对于软件开发有一套自己的方法。其中一个感觉特别有冲击力的就是有关结对编程方面的内容。

    很多人在讨论结对编程的时候,通常注重的是结对对代码质量和开发效率产生的效果。这种观点认为:结对的成本是单一开发人员的两倍,但要是他们能在X%的时间内交付代码,并且bug数量和技术负债更少,分别只有单一开发人员的Y%和Z%,那么结合衡量X,Y和Z的值,结对才可能是有意义的。

    虽然这种说法没错,但它忽略了我们之所以结对最重要的原因:结对有助于共建一种伟大的企业文化,是让新手开发人员加快速度的最佳方式,并提供了一种在开发团队中分享知识的很好方式。无论是哪种情况,实行结对编程虽然短期内会让成本小幅走高,但是从长远来看,巨大的收益也会随之而来。

    结对意味着合作,这成就了企业文化的核心

    结对是一种社会经验:每天8小时的工作时间会与另一个开发人员密切接触。这意味着,要是你与你结对的人不能进行有效的沟通,不能一起好好地研究工作中出现的问题,不能愉快地相处,那么你就悲剧了。这也是为什么Braintree在它的面试流程中将沟通能力和文化契合度列为与技术能力平起平坐的原因:我们不想要雇用那些不能结对的人!

    招聘流程是企业文化的基石:没有正确的优秀人才就不可能创造一种充满活力的合作环境。在招聘开发人员时通过着重强调文化契合度和沟通能力,可以早早地表达一种协作的姿态。此外,这还有一定程度的自我选择范围:要是开发人员不想结对工作,那么他们可能并不适合Braintree这样的文化氛围。

    短期成本也与此有关。要是我们决定不雇那种虽然技术好但不能好好共事的人,那么基本上等于是为了保护长效的企业文化而放弃了短期生产力的提高。

    结对让新手开发人员加速

    在与别人结对时,你不仅能观察他们如何编写代码,还能看到你的结对伙伴是如何面对整个开发流程的:发现哪里需要改变,编写测试,阅读源代码,查找文件,配置开发环境,等等。并且你还可以知道他们选用哪种工具,以及如何有效使用工具。

    初级开发人员绝对能从中获益匪浅。更重要的是,当轮到他们操作的时候,他们还可以从他们的前辈那里得到连续的反馈。这是我的亲身经历——那个时候我刚加入Braintree,只有大概一年的专业开发经验,在大学里也没有学过多少计算机科学知识。但是在这工作三个月后,我的工作流程得到了彻底的改变。

    从长远来看,高级开发人员同样受益:这已经是一个老生常谈的话题,但在教学的同时的确可以加深自己的理解。也就是说,初级开发人员和高级开发人员结对也有相关的短期成本与长期效益。一对高级开发人员固然比初级和高级开发人员结对的进展更快,特别是工作于高级开发人员熟悉的代码库的时候。可是,与新员工结对能使得新员工快速上手。

    结对将知识转移置于开发流程的中心

    除了基本的编程能力,开发人员需要大量的信息以便于有效地运作。这些信息包括领域知识,基本代码知识,公司约定认识,检查的最佳惯例,等等。任何值得认真对待的开发方法都需要有一种能够在团队中传播知识的好方法。

    结对使得分享成为理所当然。问问题不再成为中断的拦路石——不断地与结对伙伴沟通是正常工作流程的一部分。

    除此之外,还有数以百计的开发小技巧能从学自结对伙伴:命令行快捷键,vim技巧,结合vim和tmux的方法,等等等等,不计其数。

    结对的持久战

    Braintree的开发风格非常强调长远考虑。测试驱动开发;比起机智,代码的编写更强调可维护性和可读性;尽可能缓慢的彻底深入发展。结对是发展工作的一部分:它提供了一种能每天为开发团队提供小投资的方法。我们以这种方式工作,某种程度上是因为我们写的支付处理软件为我们的客户提供了任务关键型服务。而且也是因为我们认为,从长远来看,这些做法会有大大的回报。

    要是你对上述观点产生了共鸣,欢迎发表你的见解。

    上一篇返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    PNY 推出 CS3250 M.2 NVMe PCIe Gen5 x4 SSD,高端计算新标杆

    富士康承诺在泰米尔纳德邦投资 1500 亿卢比,创造 14,000 个就业机会

    NetApp Insight 2025:NetApp 和 Red Hat 加强协作,利用 Red Hat OpenShift 虚拟化推动 IT 现代化

    2025 年 OCP 全球峰会:Credo 推出 ZeroFlap 光收发器——人工智能网络光学器件的可靠性革命

    Kong 发布 Volcano,一个用于构建 AI 代理的 MCP 原生 SDK

    昂瑞微科创版IPO成功,上峰水泥跨界投资

    AI赋能,场景智变:第16届深圳国际移动电子展引领场景化消费新浪潮

    OpenAI估值5000亿美元,成全球初创公司中的“估值之王”

    战略突破:三菱电机以匠人心态引领功率半导体技术革新

    英伟达5亿美元投资英国自动驾驶初创公司Wayve

    IT头条

    Synology 更新 ActiveProtect Manager 1.1 以增强企业网络弹性和合规性

    00:43

    新的 Rubrik Agent Cloud 加速了可信的企业 AI 代理部署

    00:34

    宇树科技 G1人形机器人,拉动一辆重达1.4吨的汽车

    00:21

    Cloudera 调查发现,96% 的企业已将 AI 集成到核心业务流程中,这表明 AI 已从竞争优势转变为强制性实践

    02:05

    投资者反对马斯克 1 万亿美元薪酬方案,要求重组特斯拉董事会

    01:18

    技术分享

    大型网站的 HTTPS 实践(三):基于协议和配置的优化

    ubuntu下右键菜单添加新建word、excel文档等快捷方式

    Sublime Text 简明教程

    用户定义SQL Server函数的描述

    怎么在windows 7开始菜单中添加下载选项?

    SQL Server 2016将有哪些功能改进?

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。