zoukankan      html  css  js  c++  java
  • Go 语言编码规范

    编码规范

    1. 命名规范

      • 大写开头 public 包外可见, 小写 private 包外不可见

      • 包名默认与文件夹名称一致,小写 不要下划线

      • 文件名 小写 用 下划线 分割 各个单词

      • 结构体命名以 驼峰命名 类似 java class

      • 接口一般以 er 为后缀结尾

      • 变量 urlArray , URLArray 采用驼峰命名, bool ==> isExist , hasConflict, canManage, allowGitHook

      • 常量 APP_KEY, APP_VER

      • 枚举常量以及注释

        type Scheme string
        
        const (
        		HTTP Scheme = "http"
        		HTTPS Scheme = "https"
        )
        
        /*
        	返回: int 类型 返回相加的结果
        	参数: x 加数, y 被加数
        */
        godoc 可以生成文档, python 可以用 sphinx 生成文档
        
        包也应该有一个包注释 , 一个位于 package 自居之前的 块注释 或 行注释
          1. 包的基本简介 (包名, 简介)
          2. 创建者, 格式: 创建人 : rtx 名
          3. 创建时间, 格式 : 创建时间:yyyyMMdd
          
          // util 包, 该包包含了项目共用的一些常量, 封装项目中一些共用函数
          // 创建人: hanru
          // 创建时间: 20190419
         
        结构体采用 下面注释格式
        
        // User, 用户兑现跟, 定义了用户的基础信息
        type User struct{
        	UserName string // 用户名
        	Email string // 邮箱
        }
        
        // 函数方法采用如下注释
        
        // NewAttrModel , 属性数据层操作类的工厂方法
        // 参数:
        //      ctx : 上下文信息
        // 返回值:
        //       属性操作类指针
        func NewAttrModel(ctx *common.Context) *AttrModel{
        
        }
        
      • import 规范

        内置包
        第三方包
        自己写的包
        goimports 会帮忙格式化
        
        import(
        	内置
        	
        	
        	第三方
        	
        	自己写的
        )
        
        用第三方的,或者内置的 采用绝对路径导入
        自己项目内部的 可以采用相对路径
        
        
      • 错误处理

        错误处理的原则就是不能丢弃任何有返回 err 的调用, 不要使用 _ 丢弃, 必须全部处理, 接收到的错误, 要么返回 err, 或者使用 log 记录下来
        尽早 return: 一旦有错误发生, 马上返回
        精良不要使用 panic, 除非你知道你在做什么
        错误描述如果是英文必须小写, 不需要标点结尾
        采用独立的错误流进行处理
        
        if err != nil {
        		// error handling
        		return // or continue , etc
        }else{
        		// normal code
        }
        
    如果有来生,一个人去远行,看不同的风景,感受生命的活力。。。
  • 相关阅读:
    对Java总体上的认识
    HTML+CSS学习情况
    读过的书籍
    FSCapture[个人认为最好的截图工具]
    会使用的软件
    深入理解Java中的引用的含义与原理
    从头开始学JavaScript (三)——数据类型
    从头开始学JavaScript (二)——变量及其作用域
    从头开始学JavaScript(一)——基础中的基础
    【Head First Javascript】学习笔记0——自己制作chm参考手册素材
  • 原文地址:https://www.cnblogs.com/Frank99/p/15374260.html
Copyright © 2011-2022 走看看