我们拒绝平庸,拒绝随波逐流,拒绝墨守成规,让梦想不再流浪。
Java编程军规
上一篇 /
下一篇 2014-06-23 15:52:13
/ 个人分类:编程
军规条例
r1]R;J/z3yc0军规一:【避免在程序中使用魔鬼数字,必须用有意义的常量来标识。】51Testing软件测试网.G#r SY
xzA:y9i
军规二:【明确方法的功能,一个方法仅完成一个功能。】
+yR+WxU+e1\{0军规三:【方法参数不能超过5个】
.D]|F
[;VL0军规四:【方法调用尽量不要返回null,取而代之以抛出异常,或是返回特例对象(SPECIAL CASE object,SPECIAL CASE PATTERN);对于以集合或数组类型作为返回值的方法,取而代之以空集合或0长度数组。】51Testing软件测试网b$K$n
_Dh2I1f"w4^4O(i Q
军规五:【在进行数据库操作或IO操作时,必须确保资源在使用完毕后得到释放,并且必须确保释放操作在finally中进行。】
@ON
T9eV.I0军规六:【异常捕获不要直接catch (Exception ex),应该把异常细分处理。】51Testing软件测试网VA3P D@B-\d
军规七:【对于if„else if„(后续可能有多个else if…)这种类型的条件判断,最后必须包含一个else分支,避免出现分支遗漏造成错误;每个switch-case语句都必须保证有default,避免出现分支遗漏,造成错误。】51Testing软件测试网g
YVy*l"{\
军规八:【覆写对象的equals()方法时必须同时覆写hashCode()方法。】51Testing软件测试网l7~f`]!G
Z7Qd
军规九:【禁止循环中创建新线程,尽量使用线程池。】
V7b\"O@r#o7z&[0军规十:【在进行精确计算时(例如:货币计算)避免使用float和double,浮点数计算都是不精确的,必须使用BigDecimal或将浮点数运算转换为整型运算。】
9y2\8w:|2?8tj|b+x0 51Testing软件测试网.ixG
|'q&z
p
军规说明
SB-RGd5?/J-n[*qX)z0军规一:【避免在程序中使用魔鬼数字,必须用有意义的常量来标识。】51Testing软件测试网"{,g!f!B;i
说明:是否是魔鬼数字要基于容易阅读和便于全局替换的原则。0、1作为某种专业领域物理量枚举数值时必须定义常量,严禁出现类似NUMBER_ZERO的“魔鬼常量”。
.bLlDY8LXF0
8Jem2Q l:R0军规二:【明确方法的功能,一个方法仅完成一个功能。】
A4_xg$E9q0说明:方法功能太多,会增加方法的复杂度和依赖关系,不利于程序阅读和将来的持续维护,无论是方法还是类设计都应符合单一职责原则。
8[6XDl\{+Q0 51Testing软件测试网(~9m
?.o$\6@,zYk
军规三:【方法参数不能超过5个】
XR)Q4{Cp+x0说明:参数太多影响代码阅读和使用,为减少参数,首先要考虑这些参数的合理性,保持方法功能单一、优化方法设计,如果参数确实无法减少,可以将多个参数封装成一个类(对象),同时考虑在新的类(对象)中增加相应的行为,以期更符合OOP。51Testing软件测试网Y@'U*Z
_k~
_)u^
w(W.`0N4u3c0军规四:【方法调用尽量不要返回null,取而代之以抛出异常,或是返回特例对象(SPECIAL CASE object,SPECIAL CASE PATTERN);对于以集合或数组类型作为返回值的方法,取而代之以空集合或0长度数组。】