美文网首页
代码之外的功夫 第5章 谨记自底向上,优化软件设计(读书笔记)

代码之外的功夫 第5章 谨记自底向上,优化软件设计(读书笔记)

作者: zizhazhu | 来源:发表于2018-07-13 11:09 被阅读0次

学会自底向上的软件设计方法。

找出问题的关键词,从关键词出发。
【自底向上的第一步,这一步的目的其实也是分解问题,把问题转换成最基本的组成单元。】

将对象之间的纽带解开,一小部分一小部分地进行实现。要分清楚系统中的物理行为和逻辑行为。
【一小部分一小部分实现更容易思考。有时候想的多了就会把目标设计得太复杂,导致思考不清对象之间的关系,或者实现的时候碰到问题。另外一点就是我们在设计对象的时候,有时候会忽略一些元素,这些元素在我们日常生活中太普遍太自然,思考时就会被自然地忽略掉。在设计程序时一定要想清楚这点,避免逻辑上的不自然。】

0-1-无穷规则。
【软件设计时三个至关重要的量。】
避免不必要的时空耦合。

经过之前的设计,代码会有一些冗余,这时候可以逐步提取可复用的组件和协议。寻找不太随时间变化的基本结构单元,而不是去找那些表面上看起来可以复用的模板式代码。
【其实这里没有弄的很明白。这个步骤是自底向上方法的必然过程,因为是从底层设计,在开始设计时高层抽象并不在考虑范围内。但是随着设计的进展,就会有冗余代码的出现。】

在实际应用中,自底向上和自顶向下是相辅相成的。
【就好像我们平时走路,既要看路边的建筑,也要看地图。如果对这个地区很熟悉,自然不需要地图,如果不熟悉,看看地图就能少走很多弯路。但是只通过看地图分析要走哪些路就会很累,做很多假设,得到一些错误的结论,其实只要到路上一看,就会明白哪里该拐弯,哪里是目的地。】

相关文章

  • 代码之外的功夫 第5章 谨记自底向上,优化软件设计(读书笔记)

    学会自底向上的软件设计方法。 找出问题的关键词,从关键词出发。【自底向上的第一步,这一步的目的其实也是分解问题,把...

  • 代码之外的功夫 总结

    阅读笔记目录代码之外的功夫:程序员精进之路 前言(读书笔记)代码之外的功夫 第1章 善用设计原型, 探索项目创意(...

  • PostgreSQL 源码解读(3)- 如何阅读源代码

    如何阅读源代码?     先说结论,我的阅读方式是通过自顶向下的方法掌握全局,使用自底向上的方法深入理解。自底向上...

  • 自底向上

    /非理性的人 2018.11.12 本文意在介绍一种思路,即自底向上。当脑海中首次浮现出这个概念的时候,我感觉到它...

  • 剑指offer_5_斐波那契数列

    斐波那契数列 第一种 最容易想到的方式: 使用递归的方式,自底向上 优化思路: 一:使用数组存储 优化,我们使用数...

  • 自底向上—iOS界面优化(第一话)

    交互式图形显示系统渲染机制 对iOS应用进行界面响应速度上的优化,首先需要了解iOS系统的渲染机制,本文是本系列文...

  • 排序之归并排序

    快速排序的自底向上

  • Spring自底向上探究

    本文重点探究DefaultListableBeanFactory的继承层次及每一个继承层次的作用 如上图所示, D...

  • 钢条切割-自底向上

    自底向上是从第1-n次的解都保存在数组中,比直接递归的效率高,而且思路也不复杂只需要想一下怎么存储从1-n 最优...

  • 递归的两种情况

    递归 和 DP 是不是都可以 自底向上 和 自顶向下 ??之前的认知是 DP是自底向上 递归是自顶向下好像这个认知...

网友评论

      本文标题:代码之外的功夫 第5章 谨记自底向上,优化软件设计(读书笔记)

      本文链接:https://www.haomeiwen.com/subject/kerjpftx.html