文章资料-库博笔记 游客
软件开发中的10大不为人知的真相
【8041】by12018-06-01 2018-10-22 最后编辑2019-01-01 10:36:19 浏览962

对于相关的计算机和代码知识,通常来说程序员比一般人要了解得多,下面我将为大家揭晓一些业内人士不会诉诸于口的真相。

 

  真相#1

 

  “你所不知道的是,很多我们每天都使用的关键软件(如 Mac OS X 和 Facebook),作为一个整体虽然可以正常工作,但是实际上它们的背后充斥了各种的弊端和缺陷。这就像是你兴致勃勃地拆开了一架全新的 747 飞机,但是却发现燃料线是由衣架固定的,起落架是用胶带粘贴的。” ——Ben Cherry

 

  这其实是非常有意思的一件事:网页和程序外观精美、运行流畅,但是却很有可能只是完美在前端上(用户所能看到的那一部分)。它们的背后其实千疮百孔、满是错误,不过因为某些神奇的原因,居然也可以正常工作。

 

  真相#2

 

  “编写应用程序时,大概 25% 的时间是花在思考最终用户将会做哪些蠢事上的。”——Brian Humes

 

  不过,25%这个数值会根据开发人员和程序员的作为而上下浮动。每次构建产品时,我们都需要坐下来思考最终用户将会如何把这个程序搞得一团乱。他们会点击什么,他们会写什么,问题的措辞,使用的语言,以及我们的写法所造成的不同理解。如果不注意这一点,那么就会出现很多问题,这是因为虽然我们知道程序是如何工作的,但是最终用户是不懂的。

 

  真相#3

 

  “程序员不是修电脑的。” ——Ritesh Kumar Gupta

 

  程序员是搞算法和设计原则的,不是一个修电脑的。我们知道电脑的内部工作原理,代码是如何协作的,但是,我们并不知道如何修理硬件,不知道为什么每次打开浏览器就崩溃,也不知道为什么电脑发热过度。请不要用一种“这种事对你们而言就是小菜一碟”的眼光看待我们。

 

  真相#4

 

  “编程是一种思想,而不是敲代码。” ——Casey Patton

 

  编程并不是说,只要你安安静静地坐下来,写个上千行代码,发布程序或应用程序的意思,编程其实是一种思想,一种解决问题的方法。而放松则是思考出方法的关键。

 

  真相#5

 

  从零开始计算,而不是从一开始。

 

  我们是从 0 开始计数的,所以你的“1”是我的“0”,你的“10”是我的“9”。之所以这么做,是因为这可以大规模地改善效率。

 

  真相#6

 

  “一旦进入状态,编程就犹如神助——这种全神贯注的状态能让任何问题都变得小菜一碟。”——Morgan Johansson

 

  知道为什么程序员被称为夜猫子吗?知道为什么我们常常熬夜吗?因为这样能让我们进入一种专注的状态,而不必担心会被其他人打断——因为他们都睡着了,这些烦人的家伙终于闭上了他们唧唧歪歪的嘴。真是一个伟大的编程时间啊!

 

  真相#7

 

  告诉你个秘密,带着问题睡觉,实际上可以解决这个问题。

 

  很多时候,我遇到那种花了几个小时都解决不了的问题,我就会去睡一觉。通过 20 分钟,一小时,六小时,十二小时的睡眠,醒来之后,问题答案就自然而然地出来了。

 

  真相#8

 

  分配下来的任务却不再需要,就像父母杀掉孩子。

 

  我们写的程序其实都类似于这样的层次结构。Parent管理它下面的Child。

 

  现实中,如果父母不想要孩子,会去做流产。而在程序中,如果不再需要某些任务,那么会切断其与服务器的联系,杀掉这个孩子。

 

  真相#9

 

  当我们吹嘘我们有多么了解电脑时,你通常会不屑一顾,同样的,你的自吹自擂也让我们觉得好烦。

 

  老实说,这真的很烦,我们真的一点也不关心你对于计算机的了解。如果你说“我对于计算机不是很懂”,或者“我对计算机编程不是很感兴趣”那还是可以理解的,但是自吹自擂,鲁班门前弄大斧就会让我们厌烦了。请规避这种行为吧。