《重构-改善既有代码的设计》Martin Fowler 摘要: 第十章 简化函数调用
Rename Method 函数改名
改一个自表达的名字吧!骚年
Add Parameter 添加参数
某个函数需要从调用端得到更多信息。
为此函数添加一个对象参数,让该对象代价函数所需信息。并发编程大多数参数很长,不放在一个类中,因为这样你可以保证传递给函数的参数都是不可修...
分类:
其他好文 时间:
2014-06-10 15:24:00
阅读次数:
210
《重构-改善既有代码的设计》Martin Fowler 摘要:
第十一章 处理概括关系
有一批重构手法专门处理类的概括关系(generalization , 即继承关系)
Pull Up Field 字段上移
两个子类有相同字段 --》 移到超类
观察函数如何使用它们,使用的方式很相似,考虑归纳到超类
Pull Up Method 函数上移
有些函数...
分类:
其他好文 时间:
2014-06-10 11:10:10
阅读次数:
171
算法导论读书笔记(17)目录动态规划概述钢条切割自顶向下的递归实现使用动态规划解决钢条切割问题子问题图重构解钢条切割问题的简单Java实现动态规划概述和分治法一样,
动态规划 (dynamic programming)是通过组合子问题的解而解决整个问题的。分治法是将问题划分成一些独立的子问题,递归地...
分类:
其他好文 时间:
2014-06-09 22:10:01
阅读次数:
397
本文是我翻译INFQ上的一篇文章。作者Chris由简入深的讲解了微服务的来龙去脉、使用场景、优势劣势、以及现有技术栈向微服务架构的重构步骤。是一篇微服务主题的不可多得的好文。
分类:
其他好文 时间:
2014-06-09 13:57:07
阅读次数:
439
重构,改善既有代码的设计--第一章感悟一、书中经典句子1.重构之前,首先检查自己是否有一套可靠的测试机制。这些测试必须有自我检验能力。2.面对长长的函数,需要分解,代码块越小越好管理。二、自己总结的句子1.修改长长的函数,找到变的参数和不变的参数,变的参数保留,不变的参数传入新函数。2.重构的时候使...
分类:
其他好文 时间:
2014-06-09 13:55:05
阅读次数:
268
写在前面:1.第一版的代码还有些烂,等功能开发齐全了,做一次重构,再慢慢分享代码2.邮箱功能、自动升级功能还没有做,笔记功能和备忘功能是好用的,大家如果不嫌弃,可以先用起来3.笔记功能目前还不能直接贴图或贴附件到编辑器里去,我后续会把这个功能加上去4.用的是qt5.3+sqlite
35.笔记里的编...
分类:
其他好文 时间:
2014-06-09 00:50:27
阅读次数:
164
表格(table)是一直以来长期被大家使用的标签,直到现在还是在用,不过呢因为现在的网站重构,建议大家不要表格(table)来布局而很多朋友误以为用表格(table)就是所谓的不标准了,其实不然,表格(table)是一个重要元素。
前不久为了寻找表格(table)所包含的主要标签,一直在寻找着,找到...
分类:
其他好文 时间:
2014-06-08 22:22:23
阅读次数:
485
问题:
给定二叉树的前序和中序遍历,重构这课二叉树.
分析:
前序、中序、后序都是针对于根结点而言,所以又叫作先根、中根、后根(当然不是高跟)。
前序:根 左 右
中序:左 根 右
对二叉树,我们将其进行投影,就会发现个有趣的事:
发现投影后的顺序,恰好是中序遍历的顺序,这也就是为什么在构造二叉树的时候,一定需要知道中序遍历,因为中序遍历决定了结点间的相对左右位置关系。所...
分类:
其他好文 时间:
2014-06-08 15:20:12
阅读次数:
214
iOS安全攻防(二十四):敏感逻辑的保护方案(1)Objective-C代码容易被hook,暴露信息太赤裸裸,为了安全,改用C来写吧!当然不是全部代码都要C来写,我指的是敏感业务逻辑代码。本文就介绍一种低学习成本的,简易的,Objective-C逻辑代码重构为C代码的办法。也许,程序中存在一个类似这样的类:@interface XXUtil : NSObject
+ (BOOL)isVerifi...
分类:
移动开发 时间:
2014-06-08 03:13:24
阅读次数:
307
设计模式是跟具体业务息息相关的。设计模式产生的原因:存在复杂的业务,经常需要系统重构。为了减轻工程师的工作量,便于系统重构和修改,便于测试,设计模式产生了,其目的就是上面所说的。所以设计模式不会凭空出现,不同的业务会产生不同的设计模式。系统重构产生的原因:第一次设计开发系统的时候,总是会有遗漏,会有...
分类:
其他好文 时间:
2014-06-07 23:11:01
阅读次数:
397