11 其他
【强制】 在使用正则表达式时,利用好其预编译功能,可以有效加快正则匹配速度。
说明
不要在方法体内定义:
Pattern pattern = Pattern.compile("规则");【强制】 避免用
ApacheBeanutils进行属性的copy。说明
ApacheBeanUtils性能较差,可以使用其他方案比如SpringBeanUtils,CglibBeanCopier,注意均是浅拷贝。【强制】
velocity调用 POJO 类的属性时,直接使用属性名取值即可,模板引擎会自动按规范调用 POJO 的getXxx(),如果是boolean基本数据类型变量(boolean命名不需要加is前缀),会自动调isXxx()方法。说明
注意如果是
Boolean包装类对象,优先调用getXxx()的方法。【强制】 后台输送给页面的变量必须加
$!{var}—— 中间的感叹号。说明
如果
var等于null或者不存在,那么${var}会直接显示在页面上。【强制】 注意
Math.random()这个方法返回是double类型,注意取值的范围0 ≤ x < 1(能够取到零值,注意除零异常),如果想获取整数类型的随机数,不要将x放大 10 的若干倍然后取整,直接使用Random对象的nextInt或者nextLong方法。【强制】 枚举
enum(括号内)的属性字段必须是私有且不可变。【推荐】 不要在视图模板中加入任何复杂的逻辑运算。
说明
根据 MVC 理论,视图的职责是展示,不要抢模型和控制器的活。
【推荐】 任何数据结构的构造或初始化,都应指定大小,避免数据结构无限增长吃光内存。
【推荐】 及时清理不再使用的代码段或配置信息。
说明
对于垃圾代码或过时配置,坚决清理干净,避免程序过度臃肿,代码冗余。
正例
对于暂时被注释掉,后续可能恢复使用的代码片断,在注释代码上方,统一规定使用三个斜杠
///来说明注释掉代码的理由:javapublic static void hello() { /// 业务方通知活动暂停 // Business business = new Business(); // business.active(); System.out.println("it's finished"); }