zoukankan      html  css  js  c++  java
  • 如何让编码更加的标准

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

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

  • 相关阅读:
    2020-10-24;我对机器学习实现的理解
    2020软件工程作业03
    友链
    导航页
    POJ3694 Network (板子题)
    洛谷 P1084 [NOIP2012 提高组] 疫情控制
    AcWing 355. 异象石
    洛谷P4556 雨天的尾巴
    POJ1639 Picnic Planning (K度限制最小生成树)
    POJ2728 Desert King
  • 原文地址:https://www.cnblogs.com/smartloli/p/4268010.html
Copyright © 2011-2022 走看看