重构——改善既有代码的设计1重构概述1.1重构的概念(What)Refactoring名词:对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低修改成本。动词:使用一系列重构方法,在不改变软件可观察行为的前提下,调整其结构。1.2为什么要重构(Why..
分类:
其他好文 时间:
2015-10-23 00:07:11
阅读次数:
218
Android中的动画分为两大类:视图动画(View Animation)和属性动画(Property Animation)。视图动画又分为帧动画(Frame Animation)和补间动画(Tween) 视图动画:只实现动画效果而不改变控件本身的属性 ? ? ? ? ...
分类:
移动开发 时间:
2015-10-19 19:32:04
阅读次数:
201
转载请注明出处:http://blog.csdn.net/lmj623565791/article/details/26276093不断设计模式~ Template Method模式老套路,看高清:它定义的算法的骨架。虽然某些步骤推迟到子类中。不改变算法结构的情况下。又一次定义算法的步骤。简单看下定...
分类:
其他好文 时间:
2015-10-19 09:27:54
阅读次数:
241
原文:http://blog.csdn.net/zhengzhb/article/details/7489639定义:封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。类型:行为类模式类图: 访问者模式可能是行为类模式中最复杂的一种模式了,但是这不...
分类:
其他好文 时间:
2015-10-15 23:32:56
阅读次数:
182
乱入:表达式中的自动类型转换 char,short,byte都升级为int类型进行运算,结果为int,但其原变量类型并不改变。 所以,byte b = 10; b = b*b; 编译时会报错。但是写成 b *=b; 就没问题了。——————————————华丽的分割线——————————————.....
分类:
编程语言 时间:
2015-10-13 22:48:36
阅读次数:
191
Java反射与动态代理 Java反射机制可以动态地获取类的结构,动态地调用对象的方法,是java语言一个动态化的机制。java动态代理可以在不改变被调用对象源码的前提下,在被调用方法前后增加自己的操作,极大地降低了模块之间的耦合性。这些都是java的基础知识,要想成为一名合格的程序猿,必须掌握!J....
分类:
编程语言 时间:
2015-10-12 22:30:34
阅读次数:
366
从一开始学习python的时候,就一直不是很理解装饰器是个什么东东,再看了很多篇博文和自己动手敲了好多代码后,算是略有了解。我理解的装饰器是:在不改变原有函数调用的情况下,对其进行包装,使其变成另外一种函数来使用,一般的用途是插入日志、性能测试、事务处理等。defhost..
分类:
编程语言 时间:
2015-10-12 19:27:18
阅读次数:
178
题目:已知一个带有附加头节点的单链表,节点结构为(data,link)。假设该链表只给出了头指针first。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第i个位置上的节点,若查找成功,算法返回该节点的地址;否则返回NULL。 分析:用一个指针p指向链表的首节点,另一个指针q...
分类:
其他好文 时间:
2015-10-09 19:45:22
阅读次数:
206
对于一组只关心相对大小而与实际值无关的数据,适用于离散化。将每个数据x的值修改为x在数组a[]中从小到大排序的名次。这样离散化,缩小了数据之间的间隔,但又不改变其相对于其他数据的大小关系。可以减少数据的时空复杂度。for(i=1;i<=n;i++){scanf("%d",&a[i]);b[i]=a[...
分类:
其他好文 时间:
2015-10-08 14:23:55
阅读次数:
131
模板方法模式:在一个方法定义中定义一个算法的骨架,而将一些步骤延迟到子类中。使得类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。(1)可以在方法中定义一个空的钩子,钩子在抽象类中不做事,而是由子类真正实现钩子功能(2)为了防止子类改变模板方法中的算法,可以将模板方法声明为final
分类:
其他好文 时间:
2015-10-08 01:43:38
阅读次数:
273