GOF23种设计模式设计原则:1. 单一职责原则(SRP):就一个类而言,应该仅有一个引起它变化的原因2. 开放-封闭原则(OCP):软件实体(类、模块、函数等)应该可以扩展,但是不可修改。即对于扩展是开放的, 对于修改是封闭的。3. 依赖倒转原则: A. 高层模块不应该依赖低层模块,两个都应该依赖...
分类:
移动开发 时间:
2014-07-07 09:00:55
阅读次数:
191
看GoogleDoodle-Dance的源代码,学习到一个小知识——简写if语句。几乎所有语言中||和&&都遵循“短路”原理,如&&中第一个表达式为假就不会去处理第二个表达式,而||正好相反。js也遵循上述原则。所有:a && b : 将a, b转换为Boolean类型, 再执行逻辑与, true返...
分类:
Web程序 时间:
2014-07-06 23:57:30
阅读次数:
346
为了提高软件的可维护性,应该遵循以下几点原则:1.“开放--封闭”原则(OCP) 一个软件实体应该对扩展开放,对修改封闭.2.里氏代换原则(LSP) 子类型必须能替换她们的基类型,反过来则不成立。3.依赖倒置原则(DIP) 要依赖于抽象,不要依赖于具体。 优点是降低耦合,提高可扩展性和稳定性...
分类:
其他好文 时间:
2014-07-05 18:26:40
阅读次数:
185
1.java变长参数用...表示,如Print(String... args){ ... };
2.如果一个调用既匹配一个固定参数方法,又匹配一个变长参数方法,则优先匹配固定参数的方法
3.如果一个调用能匹配两个及以上的变长参数方法,则出现错误——这其实表示方法设计有问题,编译器会提示The method is ambiguous
4.方法只能有一个变长参数,且必须放在参数列表的最后一个...
分类:
编程语言 时间:
2014-07-04 08:32:31
阅读次数:
233
#encoding=utf-8
#这是一个易经的启卦程序,在windows下的python3.3下创建‘
#启卦要本着易的四原则,无事不占,不动不占,无疑不占.不能乱占。
importrandom
banyao=range(1,385)
#获取1到384的随机数。
fz=[]
#爻的阴阳列表
fx=[]
#爻符列表
fy=["初","二","三","四","五","..
分类:
编程语言 时间:
2014-07-04 06:42:35
阅读次数:
500
《编程导论(Java)·3.1.3 接口与实现分离》
Parnas原则被称为接口与实现的分离(separation of interfaceand implementation)。
一.节选【p100-】:
1. Brooks Vs. David Parnas
在大规模编程中,如何组织大型团队中多个程序员同时开发、特别是如何对待其他程序员的代码,FrederickP. Brooks J...
分类:
其他好文 时间:
2014-07-03 16:21:03
阅读次数:
186
原文链接: Test execution order原文日期: 2012年12月06日翻译日期: 2014年7月2日翻译人员: 铁锚说明: Junit4.11版本及以后才支持,建议升级到最新版本.按照设计原则,JUnit是不指定测试方法调用执行顺序的。目前为止,这些方法只是简单地按照反射(reflection) API返回的顺序执行。但是,使用JVM默认提供的排序是很不明智的,因为Java平台没有...
分类:
其他好文 时间:
2014-07-03 15:56:10
阅读次数:
268
设计模式六大原则单一职责原则(SingleResponsibilityPrinciple)定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能...
分类:
其他好文 时间:
2014-07-03 12:13:25
阅读次数:
253
armv6、armv7、armv7s是arm CPU的指令集,原则上是向下兼容的,如:iPhone4sCPU支持armv7,但它会兼容armv6,只是使用armv6指令可能无法充分发挥它的特性。iphone5CPU支持armv7s,它也会兼容armv7。如果引用到第三方的库,以前在iphone4s下...
分类:
移动开发 时间:
2014-07-02 17:51:52
阅读次数:
214
覆盖equals时,遵守通用约定
对equal方法的覆盖看起来很简单,但是有许多情况是容易导致错误,最好的避免这些错误的办法
就是不覆盖equals方法.
必须遵循的原则:
自反性--对于任何非空的引用 x,有x.equals(x) 为true;
对称性--对于任何非空的引用x,y,如果x.equals(y) 为true,则必有y.equals(x) 为true;
传递...
分类:
其他好文 时间:
2014-07-02 17:03:19
阅读次数:
142