关注码农话题
做一个实实在在的内行人

编程开发中最浪费时间和资源的几个错误

作为软件工程师,你希望从工作中获得的是:稳定的薪水、参与好项目的机会、好工作的跳板或只是和其他程序员成为好基友。这里的“高效”,我指的是按时完成符合要求的项目的能力。经历过不少软件编写工作后,我相信以下实践会帮助你学会“高效”,同时提高专业声望、拉长职业寿命,和获得个人满足。

编程开发中最浪费时间和资源的几个错误

1、不问客户究竟想要什么

一般而言,在签署合同阶段都会有一份关于原始需求的标准性文件。而我们常常会犯的最大的错误之一就是想当然地认为,这就是客户的想法。我的建议是,和客户那边所有的核心员工开个咨询会议,确保客户所有的需求都能成竹在胸。

2、没有全局性的章程

早前我在一家小公司工作的时候,因为资源有限,我们的老板总是催我们尽早写代码。通常我们不得不一签好合同就立马开工(有时候甚至更早)。我们常常对客户需求懵懵懂懂一知半解,不过即使我们知道客户究竟想要什么,我们的老板也不会让我们腾出时间为程序员和设计师写需求说明。

3、不写文档

从另一个人手里接手源代码而没有任何文档,再也没有比这个更让人吐血的了。

这种情况不仅仅是发生在开发人员身上。我曾经做过一个项目,客户的需求总是变来变去以致于最后的需求说明和原始版本大相径庭,除了都是Web应用,我找不出其他相同之处。虽然我们的讨论一丝不漏地保存于邮件之中,并且也有了最后的产品也照着客户要求做出来了,但是要是我想知道具体什么时候我们做了什么这样的细节,就无从着手了,这变成了一个不可能的任务。所以,在文档中跟踪项目的流程和变化这一点也很重要,它将防止混乱和计费错误。

4、你有给任务划分优先级吗?

新的一天开始的时候,作为有能力自由选择任务顺序的一个工种,开发者们经常会从最简单的任务开始着手。简单的任务当然能让一天有一个轻松的开端,但同时那些迫在眉睫、让人望而生畏的任务却被推向了这一天的末尾。而这会产生更多的压力,并最终导致你没能把最重要的事情完成。

5、你有管理各种干扰吗?

多数人不会意识到,他们一天中有多少时间是被各种干扰掳走的。如果程序员们不能努力地消除它们,干扰将会严重地影响生产力。

如果你在家办公,请确保有一个独立的工作空间。在办公室,则要保持桌面的整洁,因为 乱放东西会降低你的效率 。同时请尽量避免使用那些对工作并不必要的网络应用,如电子邮件,聊天工具,脸书,YouTube 等等。

6、你有抽出时间休息吗?

许多开发者因为一次工作的时间太久而扼杀了自己的生产力。就在前不久,我需要在一个项目中删除恶意勒索软件,我一刻不停地埋头苦干了 8 个小时,但最终又沮丧又累成狗的我并没能成功。而就在试着进行休息调整、理清了思绪后,只花了半个小时我就搞定了这个问题。

7、清理代码

保持你的房子/公寓/房间整洁的最好办法就是每天花一点时间清理它,或至少每周清理一次吧。如果等到住所乱到一定程度才打扫,那么这麻烦就非常大了。除非你雇个清洁工。

假设你没办法奢侈到雇一个人每天帮你清理代码的程度,那么你就应该定时地检查你的代码、清理累积的死代码、淘汰过时的注释和错误的名称,否则你必定会得到一份不敢拿出来见人的代码。如果你不觉得丢不起人,好吧,你行。

8、问题?注释?

有些人认为编程是一门手艺活,也有些人认为编程是一项工程。更经常的是,它是一门考古学。你挖掘代码的沉积物,想知道这些奇怪的人工产品是用来干什么的。为后来人着想一下,留点线索吧。

当你写代码时,记得注释,而不是等着出现什么方便的清理短语——注释你的代码,让它甚至可以清楚地反映你在编写时的想法。你可以成为自己的编写伙伴。

现在你可以用javadoc和doxygen等生成漂亮的HTML或来自源代码注释的其他格式化的文件。理想的情况是,你每天晚上做的就是doc生成的部分,可以通过你的内联网获得。

9、注意警告

无视编辑器和运行时间警告会害到你自己。有“警告”就有原因。

提高编辑器的警告水平,注释代码以及记录创建和运行时间的警告信息,最好包括解决警告的标准,这样你就会知道是否解决问题或忽略问题。


入职你的梦想 VS 变现你的技术

IT面试宝典码农市场