• 如何让编码更加的标准


    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.总结

      冰冻三尺非一日之寒,要养成好的风格也非一朝一夕能完成,这需要我们自己在平时编码的时候去注意这些细节,并且严格的要求自己。亡羊补牢,为时不晚,特写此博文,与君共勉。

  • 相关阅读:
    asp.net :使用jquery 的ajax +WebService+json 实现无刷新去后台值
    如何清理数据库缓存
    如何在虚拟机中Linux+Oracle10gRAC安装
    ORA01031 权限不足存储过程中DBA 角色用户无法执行DDL
    如何查看存储过程执行计划
    如何查看执行计划
    如何使用tkprof
    C#位运算讲解与示例[转]
    C#中Invalidate() 方法
    如何创建强命名程序集, 如何查看强命名程序集的PublicKeyToken
  • 原文地址:https://www.cnblogs.com/smartloli/p/4268010.html
Copyright © 2020-2023  润新知