《梦断代码》阅读笔记01

梦断代码向我们展示了软件工程师们在做软件时种种困难,同时也告诉了我们软件的重要性。通过一个个小故事我们可以从中学习到很多对我们今后有帮助的经验。

第0章他简述了作者的一次项目开发,以此为切入点展示了一个项目在提交之前的“黑暗”,做完自己任务的程序员,任务一交就可以全家飞往夏威夷度假,而程序仍有问题的程序员则要绞尽脑汁在提交之前改完所有错误。计算机先驱莫瑞斯·威尔克斯在他使用打孔纸带给计算机装载程序时感叹,今后的好日子都将耗费在给自己程序找错误上头。一语成真,直到现在我们的程序员还在不停地给自己找错误。仿佛不论给我们多么长的时间我们都没有办法将软件做的尽善尽美,不论多么好的软件都有1.0,2.0甚至更多的版本在不断更新中,在软件编程中没有一劳永逸这一说,我们总是在改错,我们“犯错”(编程阶段)的时间要比改错的时间少很多,并且很多时候我们都是在“找错”。软件编程绝对不比任何一个工作来的轻松,尽管它不过是动动手指。

作者将本书的第一章命名为第0章并不是开玩笑,反而是一个小小的建议,作者的意图在于告诉大家作为一个编程人员要将自己的思想与计算机的思想融为一体(计算机是从0开始计数的),这样才能在编写软件时避免犯错。

时间: 2024-07-29 00:44:38

《梦断代码》阅读笔记01的相关文章

<精通JavaScript>---阅读笔记01

下面是阅读精通JavaScript书做的相关笔记. JS中的函数重载 函数重载必须依赖两件事情:判断传入参数数量的能力和判断传入参数类型的能力,在js中每个函数都带有一个仅在这个函数范围内作用的变量,称之为参数argument,它是一个包含所有传给函数参数的伪数组,所以并不是正的数组,但是我们不可以去修改它.其实这个就相当于一个池,将参数全部都保存在里面,之后在用的时候去取,只是这个池我们看不见.是语言自己去找. JS中2种常见的类型检查 :typeof()操作符 typeof n==”stri

ijkplayer阅读笔记01

ijkplayer阅读笔记01 1.这章解决ijkplayer播放库初始化部分,直接贴上流程伪代码如下: IjkMediaPlayer_native_setup { ijkmp_android_create(message_loop){ mp->ffplayer->vout = SDL_VoutAndroid_CreateForAndroidSurface();{ SDL_VoutAndroid_CreateForANativeWindow();{ vout->create_overla

掌握需求过程阅读笔记01

掌握需求过程 第一章什么是需求 阅读笔记 我们为什么要进行需求呢? 这样是为了使效率更高,并且减少错误步骤所不必付出的代价. 在我们构造产品之前就要知道客户的需求是什么,大多数的组织都是通过系统分析来进行的,但是需求过程与系统分析并不是一回事,虽然他们之间有联系,但并不完全相同.除了系统分析以外,需求也是很有必要的.他可以对你的分析师生涯有更进一步的促进.当我们接触到一个新的产品时,业务事件和使用情况逐渐清晰了起来,系统分析可以对产品进行更清楚的建模,并为需求过程提供有价值的反馈.对需求的了解增

【ShaderLab】Cookbook阅读笔记01

<Unity Shaders and Effects Cookbook>阅读笔记,找了很久ShaderLab的教程......结合官网教程学习ShaderLab. 用一个最简单的Shader展示一下shader代码的结构: 第一行代码Shader后跟的是shader的名字,在给Material添加Shader时根据shader名找到对应shader: 以上这个再简单不过的Shader由Properties部分和SubShader部分构成. 其中Properties定义了一系列Shader中用到

《需求工程--软件建模与分析》阅读笔记01

该书为<需求工程--软件建模与分析>第二版,骆斌主编,丁二玉编著,高等教育出版社. 该书分为了五部分,今天的阅读笔记来谈谈第一部分绪论. 这一部分主要讲了:1.需求工程导论  2.需求基础  3.需求工程过程 第一小部分需求工程导论讲了软件生产中的需求问题,即:需求问题是当前软件开发面临的主要问题(无论是实践者的亲身体会还是各种调查数据),需求因素对项目的成败具有至关重要的影响.该书中也指明了综合上看来,需求因素对成功项目的影响指数为53.9%,对问题项目的影响指数为55.6%,对失败项目的影

《架构之美》阅读笔记01

一.阅读内容 第一章架构概述 第二章两个系统的故事:现代软件神话 二.笔记总结 (1)什么是软件架构? 其实在好多学科中都用到了"架构"这个词,大都表达了对所创造作品的描述,或者是对创造过程的计划.但是在软件专业中还有更具体的表达.软件架构不是一个简单的实体,软件架构师需要用多分文档来对软件的行为和结构进行描述,以此来形成软件架构.<软件架构实践>一书对软件架构的规范化定义是这样的,一个程序或计算机系统的软件架构是系统的一种结构或一组结构,包含了软件元素.软件元素外部可见的

程序员修炼三部曲阅读笔记01

看了程序员的修炼三部曲,感触颇多. 这本书主要分为九章,第一章绪论的部分主要是讲述本身一些结构,以及本书对一般的人的作用.第二章将根据徳雷福斯模型(稍后介绍)将人分为新手到专家的五个阶段.你可以根据描述准确的定为自己所处的阶段.三四五章是将自我认识的部分,主要是正对大脑.第三章讲述的是认识你的大脑,会让你对大脑的工作模式有更好的认识,之后当然是实践的第四章-利用你的右脑.大脑也会范错误,需要我们调试,就是第五章的调试你的大脑.在对大脑有了深刻的认识之后当然是关注如何提高了.后面的几章就是关于提高

javascript学习笔记01

第一天 由于自己学习过于草率,导致重新再走一遍学习流程的恶果,前段时间将html css 等相关前端比较基础的东西学了一遍 走一遍之后就觉得html和css就像是英语中26个大小写字母一样 是每一个web开发程序员必须懂的东西  不管是现在学习的javascript还是以后要学习的php都要将所编写的代码嵌入到我们的html文本中的  是在他上面运作 起作用的  总的来说再次走了一遍 觉得html没有太强的逻辑性 多的就是多实践多积累 将元素和属性名记到指尖中去  关键是布局的兼容性问题是一个难

《构建之法》阅读笔记01

这一学期,开始了健民老师的软件工程概论课,早就听闻健民老师的软件工程概论课很牛,听了两节课下来,果然如此. 老师引用了<构建之法>书中的理念,认为软件不是靠着理论堆积而成,而是一个个实发的项目组成的,在课上,老师引用了书中的例子来形容学生和老师的关系. 1.餐馆服务员/食客 2.老板/雇员 3.保姆/幼儿:像保姆一样操办一切 4.哥们/哥们:一起混吧 5.路人甲/路人乙 6.狱警/犯人:想法点名/想法逃课 7.健身教练/健身学员:鼓励成长 当然,大家都更加喜欢7,希望能够获得更多的编程技能和知

《大型网站技术架构核心原理与案例分析》阅读笔记-01

通过阅读该书籍我们能够更加清楚的树立大型网站的的技术发展历程,剖析大型网站技术架构模式,深入的讲述大型互联网架构核心原理,并通过一些典型的技术案例来讲述大型网站开发全景视图,该书籍深入的阐述了各种大型网站面临的各种架构问题及解决方案. 在第一章第一篇大型网站架构演化中了解到与传统企业应用系统相比,大型互联网应用系统具有高并发大流量.高可用性.海量数据.用户分布广泛,网络情况复杂.安全环境恶劣.需求快速变更,发布频繁.渐进式发展等特点:大型网站架构演化发展历程经历了初始阶段的网络架构它的应用程序.