《重构-改善既有代码的设计》Martin Fowler 摘要: 第九章 简化条件表达式
Decompose Conditinal 分解条件表达式
你有一个复杂的条件(if-then-else)语句
从三个段落中分别提炼出独立函数
Consolidate Conditional Expression 合并条件表达式
你有一系列条件测试,都得到相同结果
将这...
分类:
其他好文 时间:
2014-06-20 13:03:15
阅读次数:
212
《重构-改善既有代码的设计》Martin Fowler 摘要: 第八章 重新组织数据
Self Encapsulate Field 自封装字段
你直接访问一个字段,但与字段之间的耦合关系逐渐变得笨拙。
为这个字段建立取值/设置函数,并且只以这些函数来访问字段。
子类用超类数据时
Replace Data Value with Object 以对象取代数据值
...
分类:
其他好文 时间:
2014-06-20 12:42:22
阅读次数:
280
问题:
给定二叉树的前序和中序遍历,重构这课二叉树.
分析:
前序、中序、后序都是针对于根结点而言,所以又叫作先根、中根、后根(当然不是高跟)。
前序:根 左 右
中序:左 根 右
对二叉树,我们将其进行投影,就会发现个有趣的事:
发现投影后的顺序,恰好是中序遍历的顺序,这也就是为什么在构造二叉树的时候,一定需要知道中序遍历,因为中序遍历决定了结点间的相对左右位置关系。所...
分类:
其他好文 时间:
2014-06-08 15:20:12
阅读次数:
214
设计模式是跟具体业务息息相关的。设计模式产生的原因:存在复杂的业务,经常需要系统重构。为了减轻工程师的工作量,便于系统重构和修改,便于测试,设计模式产生了,其目的就是上面所说的。所以设计模式不会凭空出现,不同的业务会产生不同的设计模式。系统重构产生的原因:第一次设计开发系统的时候,总是会有遗漏,会有...
分类:
其他好文 时间:
2014-06-07 23:11:01
阅读次数:
397
.\Obj\HST3GSTM32F205.axf: Error: L6218E: Undefined symbol get_host_by_name (referred from neti_tcpip.o).
.\Obj\HST3GSTM32F205.axf: Error: L6218E: Undefined symbol tcp_abort (referred from neti_tcpip....
分类:
其他好文 时间:
2014-06-07 16:22:39
阅读次数:
260
分层
分层是为了减少层与层之间的依赖,增加程序的可读性,让整个系统结构清晰明确,还可大大降低维护成本,但是分层也有一定的缺点,有些可以直接访问数据库的层,却要通过负责访问数据库的层进行访问,这样,在访问数据库过程中就多出一个环节,增加了系统的开销,有时候要在表示层增加某个功能,为了降低耦合,就不得不自上而下,在每一层里面增加这个功能所需的服务类,这样就增加了开发成本
...
分类:
数据库 时间:
2014-06-07 15:23:00
阅读次数:
339
《重构-改善既有代码的设计》Martin Fowler 摘要: 第七章 在对象之间搬移特性
Move Method 搬移函数
你的程序中,有个函数与其所驻类之外的另一个类进行更多交流:调用后者,或被后者调用
在该函数最常引用的类中建立一个有着类似行为的新函数。将旧函数变成一个单纯的委托函数,或者将旧函数完全移除。
Move Field 搬移字段
某个字段被其所驻类之外...
分类:
其他好文 时间:
2014-06-07 15:18:01
阅读次数:
171
机房也进行了好几天了,不过最近这几天依旧是停留,停留...
分类:
其他好文 时间:
2014-06-07 13:17:50
阅读次数:
220
最近在维护代码,或者说是重构,代码太烂了,每加个小的功能要费太多时间,很多时间都花费在理解他人的代码并修补上,出问题了,大家都不知道怎么个回事,于是开始从大的方面重构,至少先整个主干出来,算是开个头。发现一个问题是,很多烂的代码是开发人员在对某个工具知之甚少情况下就开始使用而形成的,大概知道那么一点...
分类:
其他好文 时间:
2014-06-07 10:38:28
阅读次数:
181
1)寻找引用点时,最好使用工具,然后再人工review。在看到这个问题的时候,我估计应该是很久之前了。现在用IDE。这个要方便很多。
2)重新组织函数的方法和目标。 其实目标很简单。就是消灭长函数。 常用方法 Extract method Inline Method Replace Temp
wit...
分类:
其他好文 时间:
2014-06-05 16:51:44
阅读次数:
254