12 Steps to Better Code【改善代码的12步】

六、Do you have an up-to-date schedule?

你是否有最近的日程安排,作为程序猿,我们最喜欢的就是代码,如果没有外力作用的情况下,大多数不会制定未来的日程计划。但是站在公司商业角度,必须知道开发的最近的工作是什么,每天做什么事情,大概什么时候可以做完。这样既可以掌控全局进度,也可以督促程序猿高效的完成任务,而不是在摸鱼。。。

七、Do you have a spec?

第七点作者也是相当的重视,可能是实际遇到太多这样的问题,所以反复强调它的作用。在开发之前一定要有一个详细的文档说明,就比如我们中国软件项目开发流程,需要有类图、时序图、用例图、架构图、需求分析、部署图等等之类的文档说明,才可以进行具体的代码开发。

如果没开发代码之前,文档出现问题很容易修改,修改几个图或者描述就可以了,但是如果没有文档,后面发现问题,修改代码的话,那成本就非常大了。

八、Do programmers have quiet working conditions?

第八点作者也进行了着重的介绍,需要给程序猿提供一个良好的公办环境。要知道人集中精力进入到某种高效的状态中是很难的事情,可能需要十几分钟甚至个把小时,才会进入这个状态,但是退出这个状态却很容易,可能同事的一个问题就足够了。

这可能也是为什么大公司,那种顶尖的开发团队,公司办公环境特别好的原因。你想想要是开发和销售是在同一个房间中,天天在耳边打电话,我想别说集中注意力了,正常工作估计都很难完成,效率会严重折扣。

九、Do you use the best tools money can buy?

你能忍受电脑特别垃圾,运行一个服务得等几分钟的场面嘛,我想那个时候你可能会找小说或者找朋友唠嗑,很久之后才会回到电脑上面看是否执行完了。开发人员的工具是非常重要的,小到影响开发效率,大到影响工作情绪。

如果能用酷炫的开发设备来留住程序猿,何乐而不为呢?

十、Do you have testers?

这一点相比大部分公司应该都具备,团队当中是否有测试人员。专业的事情就应该交给专业的人来做,以前可能开发就是全栈,测试、开发、前端都一个人搞了,但是这样的人并不多,大多数人还是都某种技能比较擅长,没办法做到全栈。

作者给我们举了一个很有意思的例子,开发每天1000,测试每天300,你舍得拿1000工资的人去干300的事情嘛?

十一、Do new candidates write code during their interview?

面试的时候是否让候选人手敲代码?很多大公司都会对这一项进行考察,比如在线编程解决实际的算法题之类的,一方面是考察程序猿逻辑思维能力,另一方面就是考察实际开发能力。

外国人有时候很幽默,文章中举了一个让人哭笑不得的例子,你结婚的时候会找一个都没有承接过婚姻的酒店来作为婚礼现场嘛,其实核心就是不想找一个只会背面试题,没有实际工作经验的人加入团队中来。

十二、Do you do hallway usability testing?

最后一点大家可能比较陌生,博主看的时候也是一脸蒙蔽,特别震惊。简单的意会就是:你开发完一个功能之后,自己测试一遍之后,去hallway上面拉一个人过来接着检查,如果能连续拉5个以上的开发检查,没有发现任何问题,那这个功能就基本不会有什么大毛病。

感觉在中国这点比较难实现,毕竟没 《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】 有几个人愿意,坐下来认认真真的看你代码。

大佬的文采比我好多了,英语不够给力,可能没办法表达出作者的精髓,有兴趣的同学可以阅读原文。

原文链接: [https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-steps-to-better-code/](()

-----------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值