本书第六章为当你编码时。

  在“靠巧合编程”部分,提到我们要深思熟虑的编程。在编程过程中,可能会出现实现的偶然、语境的偶然、隐含的假定,这些会导致代码不能一直工作并且不知道原因所在。给出了提示44,“不要靠巧合编程”。那么,怎样深思熟虑的编程:1、总是意识到你在做什么2、不要盲目的编程3、按照计划行事4、依靠可靠的事物5、为你的假定建立文档6、不要只是测试你的代码,还要测试你的假定。7、为你的工作划分优先级8、不要做历史的奴隶。

  在“算法速率”部分,提到注重实效的程序员几乎每天都要使用:估计算法使用的资源——时间,处理器,内存等。给出了提示45,“估算你的算法的阶”。注重实效的程序员会设法既考虑理论问题,又考虑实践问题。给出了提示46,“测试你的估算”。  

  在“重构”部分,提到重写、重做和重新架构代码合起来,称为重构。在代码具有以下特征时,应考虑重构1、重复2、非正交的设计3、过时的知识4、性能。给出了提示47,“早重构,常重构”。那么,怎样进行利大于弊的重构,下面给出了几点简单提示:1、不要试图在重构的同时增加功能2、在开始重构之前,确保你拥有良好的测试 3、采取短小、深思熟虑的步骤。

  在“易于测试的代码”部分,提到软件需要进行单元测试(对模块进行演练的代码),针对合约进行测试。给出了提示48,“为测试而设计”。测试的方法有编写单元测试,使用测试装备,构建测试窗口。给出了提示49,“测试你的软件,否则你的用户就得测试”。

  在“邪恶的向导”部分,给出了提示50,“不要使用你不理解的向导代码”。

 

  本书第七章为在项目开始之前。

  在“需求之坑”部分,给出了提示51,“不要搜集需求——挖掘它们”。提示52,“与用户一起工作,以像用户一样思考。之后还需要建立需求文档,需求文档不要太过具体,但应能够准确的反映商业需要。提示53,”抽象比细节活得更长久“。提示54,”使用项目词汇表“。

  在”解开不可能解开的谜题“部分,讲到解开谜题的秘诀是确定真正的(而不是想象的)约束,并在其中找出解决方法。提示55,”不要在盒子外面思考——要找到盒子“。

  在”等你准备好“部分,给出了提示56,”倾听反复出现的疑惑——等你准备好再开始“。在不清楚自己是在拖延还是在负责的等待所有工作准备就绪的时候,开始构建原型。

  在”规范陷阱“部分,给出了提示57,”对有些事情“做”胜于“描述”。作为注重实效的程序员,应该倾向于把需求搜集、设计以及实现视为同一个过程——交付高质量的系统的不同方面。

  在“圆圈与箭头”部分,给出了提示58,“不要做形式方法的奴隶”。注重实效的程序员批判的看待方法学,并从方法学中提取精华,融合成每个月都在变得更好的一套工作习惯。给出了提示59,“昂贵的工具不一定能制作出更好的设计”。

  

posted on 2019-12-30 17:37  嘻嘻_嘻  阅读(164)  评论(0编辑  收藏  举报