GO语言框架其他及代码编程规范 | 青训营

56 阅读2分钟

GO语言框架其他及代码编程规范

  1. etcd:是一种强一致性的分布式键值存储,提供了一种可靠的方式来存储需要由分布系统或机器集群访问的数据。在网络分区期间可以很好地处理leader选举,有容错。 特点:界面简单,使用标准HTTP工具读取和写入值 key-value存储:将数据存储在分层组织目录中 关注变化:观察特定键或目录的变化,并对值的变化做出反应

  2. Opentracing:分布式跟踪(分布式请求跟踪),是一种用于分析和监视应用程序的方法,尤其是使用微服务体系结构构建的应用程序。分布式跟踪有助于查明故障发生的位置以及导致性能不佳的原因。 一般开发人员使用分布式跟踪来调试和优化其代码 由API规范、实现该规范的框架、库及项目文档组成

  3. IDL:交互式数据语言(Interactive Data Language),数据分析和图像化应用程序及编程语言。可以迅速方便地将数据转换为图像,内置数学库函数可以大大减少图像处理算法开发工作量。可移植性好。

  4. 提升代码可读性,风格一致的代码更容易维护,学习成本和团队合作成本更小,也可以降低review成本

  5. 要善于使用注释,注释应提供代码未表达出的上下文信息:注释应解释代码作用;解释代码实现方式(怎么做的);解释代码实现原因;解释什么情况会出错;包中声明的每个公共的符号(变量、常量、函数及结构)都需要添加注释

  6. 命名规范:

    变量名:简洁、缩略词全大写,但位于变量开头且不需要导出时使用全小写、注意上下文信息的表达

    函数名:简短、不携带包名的上下文信息、注意返回类型信息是否需体现

    包名:只用小写字母组成、不与标准库同名

  7. 控制流程:避免复杂的嵌套分支、提高代码可读性

  8. 错误及异常处理:

    panic:真正异常的情况

    error:尽可能提供简明的上下文信息,方便定位问题

    recover:生效范围,只在当前go routine的被defer的函数中生效。嵌套无法生效。