让程序员精神分裂的9件事
在外行人眼里,软件开发工作就跟看天书一样难——但是程序员往往会一脸苦哈哈地表示“还有更难的呢!”在最近 Quora 上面的一个讨论中,我们总结了 9 件最让程序员糟心的事——简直就是分分钟让我们精神分裂啊!!!
8. 写测试 任务:编写单元测试,以确保每一部分代码都能正常运作。这些测试不但有助于在开发早期找出 bug,还能方便后续的回归测试。很多开发方法论甚至鼓励我们在写代码之前就可以先写好测试程序。 难点:选择和编写测试的过程是既辛苦又繁重的,有时候会让人感觉是在做无用功。
7. 编写文档 任务:创建用于解释代码和应用程序的文档,包括独立文档和代码注释。目标人群范围从终端用户乃至其他开发人员。 难点:很耗时间,甚至有时候你会觉得要是没人看的话那不就是在浪费时间。 网友的话:
6. 实现自己并不认可的功能 任务:不管什么原因,如果你的客户或者上司坚持某个特性和功能,那么你就不应该将个人的感情因素带到工作中去。 难点:摒弃个人想法和意见,竭尽全力地实现或支持功能需求。
5. 关于别人家的代码 任务:维护、调试或改善由其他开发人员写的应用程序或者代码片段。 难点:理解前任开发人员的代码是非常痛苦的一件事,特别是如果此人已经离开,而他的代码写得乱七八糟、缺少必要的注释和文档,那就更悲剧了。 网友的话:
4. 和其他人打交道 任务:收集客户需求,提供状态管理报告,配合测试人员,和其他工程师协作。 难点:需要向非技术人士解释技术问题,不得不依赖于其他人交接过来的任务,与 QA 或其他开发人员出现意见相左情况的处理方式。 网友的话:
3. 预估项目工期 任务:项目一开始,就需要估算出完成所需要的时间。 难点:哪怕没有接触过项目,手头只有模糊的需求说明也得硬着头皮预估时间。 网友的话:
2. 解释我的工作 任务:向非程序员——亲朋好友,解释自己的工作内容。 难点:亲人和爱人不了解我们是做什么的。总是被要求去解决任何与计算机有关的问题(比如修电脑)。 网友的话:
1. 命名 任务:为变量、过程、函数、类、对象、数据库组件等命名。 难点:即使是一个小程序,也会有很多需要命名的东西。名字最好一贯又简洁,有内涵,能承载一些意思——这个是什么或者这是用来做什么的。 网友的话:
各位,最让你头疼的事情是什么呢?欢迎在这里倾诉。 |