读后感作业1
代码大全 读后感
第一章
软件构建的主要活动包括:详细设计、编码、调试、集成、测试
第二章
隐喻把软件开发过程与其他你熟系的活动联系在一起,帮助你更好地理解。
有些隐喻比其他一些隐喻更贴切。
通过把软件的构建过程比作是房屋的建设过程,我们可以发现,仔细的准备是必要的,而大型项目和小型项目之间也是有差异的。
第三章
构建活动的准备工作的根本目标在于降低风险,开始编程之前进行充分准备的重要性是很有必要的。
应在项目前期就明确问题的定义,项目的类型,并理解采用的方法。
架构变更的代价随着“为错误的架构编写的代码数量”增加而增加。
第四章
要知道自己使用的语言的明确优点和弱点,在开始编程之前,做好一些约定,应当选择最适合自己项目的实践方法。
采用的编程实践是对你所用的编程语言的正确响应,不要仅“在一种语言上编程”。
第五章
软件的首要技术使命就是管理复杂度。以简单性作为努力目标的设计方案对此最有帮助。
简单性可以通过两种方式来获取:一是减少在同一时间所关注的本质性复杂度的量,二是避免生成不必要的偶然的复杂度。
固执于某一种单一方法会损害创新能力,从而损害程序。好的设计都是迭代的,尝试设计的可能性越多,最终设计方案就会变得越好。信息隐藏是个非常有价值的概念。
第六章
类的接口应提供一致的抽象。很多问题都是由于违背该原则而引起的。
类的接口应隐藏一些信息.一一如某个系统接口、某项设计决策、或一些实现细节。
包含往往比继承更为可取一一一除非你要对“是一个 /is a ”的关系建模。
继承是一种有用的工具,但它却会增加复杂度,这有违于软件的管理复杂度的首要技术使命。
类是管理复杂度的首选工具。要在设计类时给予足够的关注,才能实现这一目标。