当前位置:首页 > 新闻中心 > 行业新闻 >

大多数经验不足的程序员犯的编程错误是什么?

2017-12-12

文章来源是Quora的一个问题。

What are the programming mistakes most inexperienced programmers make?

CTO Ken Mazaika回答说:

我曾经觉得自己是个不可阻挡的程序员,所以,我有点自我。在我毁了自己之前,我应该明白要学会先检查一下自身。但所幸为时未晚,之后我犯的一个错误帮助我成长为一个更聪明、更谦逊的开发者。

我的第一份工作是做Rails开发员

那时我年轻,有欲望,渴望改变事情,以证明我的价值。

和大多数开发者一样,我加入了一个小团队。通过纯粹的职业道德和漫长的工作,我终于取得了一个小项目的责任权限,这个项目也很快成为公司其中一个相当可观的赚钱工具。

尽管我缺乏经验,我还是会尽力在上司、同事要求时,快速高效地去执行代码更改。

但槽糕的事情很快就发生了,由于我对Ruby和Rails框架的经验有限,我完全不知道如何正确地处理。

因为这段代码有点糟糕,但一切正常的流动。

像编织牛仔一样编码,我可以把东西拼在一起,让我们的团队行动得很快。我没有进行任何测试覆盖,但我的老板,可能看一切都很好,所以似乎并不关心我是否做测试。

一切都仿佛很完美,但忽视不是决绝问题的方式,项目发生了一些灾难性的事情。

我在星期五晚上,晚些时候发布了一个实验性的项目。

公司的每个人都渴望在下星期二(星期一是假日)看到这个试验的早期结果。

星期一早上,我查看了我的电子邮件,发现了几个奇怪的电子邮件链接。

我开始把邮箱内所有的东西拼在一起,很快就意识到我已经彻底破坏了大量用户的应用程序。我们公司很善于数据驱动,所以没多久就发现我的错误使公司损失了10000美元。

第二天早上第一件事,我便是向老板道歉……然后迅速问我是否会被解雇。他没有跳过这个问题,而是引用了一句著名的话:

"我们为什么要解雇你?"

"我们花了10000美元给你上了一课。"

那么,什么是教训?

教训就是错误后的结果,即使它们可能导致公司失去客户、金钱和信誉。

但唯一比犯错误更糟糕的是,绝不要把自己一开始就放到犯错误的位置上只去想错误,导致错过创新和学习,让你的竞争对手比你进步更快,抓住更多先机。

只看错误而不总结,所导致的危险会很使事情变得更加糟糕。

我敢肯定老板是知道我最终会弄糟某些东西造成某些损失的。

我年轻,缺乏经验,但拥有的责任感比我想要中要多很多。之后,以非常快速和宽松的方式操作,我和我们的团队行动得非常快……冒着破坏事物的危险,我最终解决了问题。

在这家公司工作的9个月里,我学到的知识比在我的职业生涯中任何其他方面都要多。在我工作中所遇到最大的困难中,我学到了所有高级开发人员在一段时间内所学到的经验教训:

1、星期五不要发布新功能(特别是在长周末)。

2、每次发布新功能时,总是要确切地了解哪些东西有被破坏的风险。

3、在代码启动时,始终检查和验证代码是否按照预期的方式工作。

4、最重要的是,永远不要害怕…"行动过快,打碎东西。"

这是脸谱网多年来的口头禅。在大多数职业中,错误表明粗心大意。但在软件中,计算风险是可以被认可的,因为高级开发人员可能都犯过你初级时会犯的错误。

永远不要害怕把自己放在犯错的位置,只要项目中风险后的成果是值得的。这也是你成长为一个更好的开发者的唯一途径。

信息与技术综合服务提供商

地址:华中师范大学东区教育培训大楼6楼
免费电话:4006-027-306

.

武汉尚观信息科技有限公司 鄂ICP备16012446号-1