1、编码
编码是一项颇具挑战也十分累人的智力活动,必须聚精会神、保持信心,同时要具备“出错感知”能力才能做好这项工作。
疲劳和焦虑时千万不要写代码,这种状态下写的代码会回过头来一遍又一遍肆虐我们。
2、代码质量:
- 代码必须能够正常工作。(多了解当前系统的生态,如:语言、平台、架构等)
- 代码必须能够帮你解决客户的问题。(多和客户交流)
- 代码必须能和现有的系统结合,不能让系统变得晦涩、脆弱。(必须遵守良好的工程原则)
- 其他程序员必须能够读懂你的代码。(写好注释、锤炼代码)
3、流态区
程序员在编写代码时往往会进入意识专注、精力聚焦的状态,在这种状态下他们会感到效率极高,犯错率低,这种状态通常被称为“流态区”。因此工作中他们一直苦苦追求进入流态区来获取愉悦感或征服感。然而,流态区是一种与世隔绝的状态,不仅使人的思维视野收拢而变得狭窄,也降低了人的理性思考能力,无法顾全大局。实际工作中,我们需要时刻与他人保持联系、被中断去协助他人、有时候由于和问题贴的太近而无法看清问题的所有可能,所以一般情况下,流态区是我们要避免进入的状态。当我们感觉自己将要进入流态区时,不妨暂时离开岗位几分钟,避免进入流态区。当然事无绝对,是否要进入流态区最终还是要看我们是否真的需要,没有固定的答案。
4、结对编程
编程并非易事,即使你的技能格外高超,也肯定能从另外一个程序员的思考与想法中受益。很多时候,当你坐到别人旁边的时候,本来阻碍你的问题就会忽然消失,这很神奇,科学都无法解释这一现象。
5、调试
调试不等于编码,但调试时间和编码时间一样宝贵,所以降低调试时间,是一个值得努力的方向。TDD实践证明可以显著降低调试时间,掌握TDD可以使你变得更加专业。
6、加班
- 加班确实有用,可以完成原本不可能的进度;
- 短期适度加班是可以接受的,但长期加班会消耗团队的干劲,从而导致员工流失;
- 职业素养更多意义上指要遵循纪律和原则,而非成为长时间加班的工作狂;
加班三要素:
- 是否能挤出时间;
- 短期加班,最多两周;
- 老板要有后备预案,以防万一加班措施失败。
若不能满足这三个条件,不要经受不住压力和诱惑盲目加班冲刺。软件开发是一场马拉松,只能通过保存体力和维持稳定的节奏来取胜。