【建议】高性能代码的一些规范性建议

这是一些写project不错的參考意见,总结分享下。

数据库方面的建议

1.      表设计须包括3个字段。一个主键id字段,一个建立索引的gmt_ctreate字段。一个能够对表更新并同一时候记录的gmt_modified字段

2.      字段非负,须使用无符号数unsigned

3.      禁用数据库保留字,比如desc,match等。原因是字段后期更名代价大

4.      不建议使用varchar字段建立索引,除非指定长度

5.      in,like操作须避免。前者需评估in后的集合数量。建议控制10^3以内。like字段的效率集中是否进行全表扫描,前台禁用,模糊匹配尽量将肯定条件的正则确定。这样能降低不少数据扫描。

6.      数据库尽量避免null值

代码方面的建议

1.      接口。方法中不加public。尽量不放置变量

2.      方法命名採用驼峰式,变量命名要见名知意,常量变量大写

3.      常量的定义位置绝对最大的訪问区间。比如类中定义局限于本类使用,单独建立package。最多是本应用级訪问,多应用訪问建立在第三方ant应用,比如maven

4.      初始化变量尽量初始化经常使用值

5.      toString方法,顺带打印父类的toString。假设异常信息须要打印。尽量打印出对应的參数名与值(称之为现场保护)+e.getMessage();

6.      类的行数控制在100行以内,方便測试与易读性。

7.      方法返回尽量返回基本数据类型,这样避免了堆实例化的开销。

8.      Foreach即,增强的for循环,集合类尽量不进行remove操作,能够使用迭代器Iterator方式

9.      对方法中传入的參数校验须要提前评估该方法调用的频率,频率较高。请将參数检查放置方法调用之前。当然须要在编写该方法的时候给于參数检測凝视以提示调用者。

Ps:Dao层对数据库进行持久化操作的方法不须要进行检測,调用较为频繁。检查一般放在service层。

当然对于安全性,可用性,RPC调用较高的方法中须要检查。

配置方面的建议

1.      眼下java框架技术日益鹏飞,后来者维护原来项目比較多见,起初的配置应当考虑到未来的问题。比如,Service,Dao,sql.xml的名称(变量=属性。方法名=数据库操作名)尽量保持一致。

2.      依赖的jar包配置遵循FIFO原则,来加入者应当在末尾加入。Maven等工具是从上到下进行xml配置分析的

 

原文地址:https://www.cnblogs.com/mthoutai/p/6726207.html