【梦断代码】罗森伯格阅读笔记二

   该都是我在书中总结的并结合实际所做下的笔记:

  在电影《侏罗纪公园》里面的一个镜头,夹在暴龙发狂的场景中间,如果你不是程序员,这个镜头可能不会给你留下很多印象,恐龙造反,小姑娘坐在计算机控制台前,尝试打开安全系统,看到屏幕,大喊一声“是Unix系统,我会搞!”之后就搞定了麻烦。我在大一学过Linux不知道他们之间有什么关系,但是我觉得应该不会太远。

  在任何领域做久了,都会遭遇这令人痛苦的方程式,但在软件世界中,质量三角形变化多端,成本难以揣测、总是时间不够体现得淋漓尽致。就像商业领域中的其他坏消息一样,经理们也常以为自己的组织能在里外之列。他们以为可以三者兼得:既好,又快,还便宜。虽然我现在还没有参加工作,但是我觉得这是很难做到的。

编程是一种创造性工作吗?看着像是,编程行为仍是一种写作行为,逐字逐句的写。一位软件大牛曾说,其实编程可以从写作世界中学到很多东西。写作时你需要读很多别人写的好文章,需要把自己写的文章让大家去评论,但是现在的编程领域却不是这样,大家很少会把自己写的代码展示给人看,也不去看别人的代码。
注释是在编写代码的过程中必不可少的存在,注释是给读程序的人看的。实际上它不仅是说明性的文字,也是程序员情绪发泄的阀门。windows 2000 某个版本的部分源代码泄露到网上,大家发现微软的程序员们写的注释有很多这样的句子:we have to do this only because Exchange is a moron.
  当我们完成一个小软件,通常是由程序员负责猜测程序该如何应对用户输入和机器状态的上千种可能的组合。但他们却并不善于站在用户的立场上考虑问题。想出合理之策。他们花费大量时间纠缠于数字化细节,他们被调教的按自己做出的系统一般地运作。他们视之为理所当然的概念,对于非程序员而言纯然是怪异之举;他们也多半不太了解用户的想法。(程序员长依赖一种称作“妈妈测试”的手段,以对计算机一无所知的妈妈为假想用例,有时候请这类用户亲自体验),除此之外,程序员们还要负责考虑各种极端情况和不太可能出现的情况。假使程序员们不是做出那些软件设计决策的最佳人选,还会是谁呢?   这种想法,我相信每个入门的程序员都会有。

  

猜你喜欢

转载自www.cnblogs.com/jccjcc/p/10924838.html