1.概述
在写这片博文时,我也是思绪良久,参考了不同语言的编码风格,最后总结出如何让自己的编码更加标准。
2.基础
以Java的基础为例子来说明:
- 文件编码格式为UTF-8
- package需要置于最顶层
- import包时,使用eclipse的快捷键(command+1)倒入对应的包(这样我们可以不用考虑包的顺序如何排列)
- 格式化代码采用eclipse的快捷键(command+shift+f)进行格式代码
- if,else,for,while等语句,必须加上大括号({}),即使语句为空
- 代码块缩进,采用2个空格
- 列限制在120个字符,对于超过120个字符的语句或方法建议重构(这样方便阅读,及代码的美观性)
- tab键默认采用4个字符的长度
3.规范
在编写代码时,需要注意一下规范:
在进行逻辑判断时,else语句必须添加,即使,else语句为空,也得添加在if语句后面
1 public void getAppDetail(App app){ 2 3 if(app != null){ 4 // 业务逻辑处理 5 }else{ 6 // 若没有业务逻辑处理,此处也需要加上,可以打印一条log 7 log.info("App object is null"); 8 } 9 10 }
在书写switch语句时,default需要加上,即使它什么代码也不包含
switch(index){ case 1: // 调用逻辑方法 break; case 2: // 调用逻辑方法 break; default: // 不涉及任务业务,打印日志信息 log.info("Index is undefined"); break; }
在进行代码块注释的时候,需要注意,但行可以使用 /* ... */,也可以使用 // ... 。对于多行的 /* ... */注释,必须从 * 开始,并且与前一行的 * 对其。以下为范例:
// 当行注释 /* 当行注释 */ /* * 多行 * 注释 */
关于命名约定可以参考,如何让命名变得优雅。
在书写try ... catch语句时,建议catch语句中只设计输出日志信息(或者将异常抛出),不涵盖业务逻辑处理。
try{ // 业务逻辑处理 ...... }catch(Exception e){ // 打印对应的异常信息 log.error(String.format("Error message is %s",e)); } try{ // 业务逻辑处理 ...... }catch(Exception e){ // 抛出对应的异常信息 throw new Exception(); }
4.总结
冰冻三尺非一日之寒,要养成好的风格也非一朝一夕能完成,这需要我们自己在平时编码的时候去注意这些细节,并且严格的要求自己。亡羊补牢,为时不晚,特写此博文,与君共勉。