天天看点

《程序员的职业素养》一——专业主义

1、心态

  “专业主义”不但象征着荣誉和骄傲,同时也意味着责任和义务。在项目中写了一个bug,以致给公司造成了损失,专业人士会主动承担责任,专业主义的精髓就在于将公司的利益视同个人利益。

2、行动

  1. 要做到专业,就不能留下bug。代码中难免有bug,但这并不能为你开脱,依然要对自己的不完美负责。(如:忽略了测试环节)
  2. 什么样的代码是有缺陷的?那些你没有把握的代码都是!把没有把握的代码,交给QA测试这本身就是不专业的。每当QA发现bug,我们都抱以歉意,更糟糕的是用户找出问题,我们应以犯过的错误为戒。
  3. 百分百(理想值)的测试覆盖。这不是建议,而是要求。要知道代码是否可行,就一定要对其进行测试。测试驱动开发(TDD)告诉我们,要注重设计从而规避写出难以测试的代码。
  4. 结构良好的代码更灵活、易于修改。专业人士不会为了发布新功能而破坏结构和原则。证明软件易于修改的唯一办法就是做些实际的修改。“无情重构”策略:每次检入代码,都要让它比上次检出时变得更为简洁;每次读代码,都别忘了进行点滴改善。对线上运行的软件不断修改其实并不危险,危险的是让软件保持固定不变,最后僵化。专业人士可以对自己的代码和测试极有把握,随意做出各种修改。
  5. 职业发展是自己的事情,不是雇主该做的事情,将自己的职业发展寄托给公司是不理智的。每周40个小时是用来给雇主解决问题的,除此之外,职业人士还会挤出时间看书(了解业务领域以免被行业抛在后面)、练习(训练手指和大脑)、合作(从彼此身上学习)、辅导(教学相长),不断提升职业能力和素养。如果你做不到这么勤勉,就不能自视为“专业人士”。
  6. 谦逊。不嘲笑他人,专业人士也会摔跟头。

继续阅读