• 如何让编码更加的标准


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

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

  • 相关阅读:
    .NET 二维码生成(ThoughtWorks.QRCode)
    js 异常处理 错误不弹出窗口
    精美的贴子挂件
    .NET 导出到excel
    转:ASP.NET发布WebService操作流程
    Jquery中的CheckBox、RadioButton、DropDownList的取值赋值实现代码
    照片墙
    NET生成缩略图并下载
    QQ分组图案
    .net实现webservice简单实例分享
  • 原文地址:https://www.cnblogs.com/zhaodahai/p/6830770.html
Copyright © 2020-2023  润新知