【代码篇】从零开始一步步搭建自己的golang框架

栏目: IT技术 · 发布时间: 4年前

内容简介:不知道是不是有很多学习golang的新人会遇到这样的问题。包循环引用这个问题,让人很头疼,尤其是在项目越来越复杂的时候,出现这么一句报错,这意味着你可能需要修改很多代码,这对一个新人来讲压力很大。通常来讲,解决这个错误的办法是将需要引用的那个包抽象成接口,解耦后调用。但这不是我这个篇章想要讲的内容。这个系列主要讲的是如何从代码组织架构方面去避免这个问题。从零开始一步步搭建自己的golang框架。这个篇章将实现以下的功能:我们先明确一下命名规范,之后再去开始编写代码。如下:包名: 小写字母,不分割单词,比如包

前言

import cycle not allowed

不知道是不是有很多学习golang的新人会遇到这样的问题。包循环引用这个问题,让人很头疼,尤其是在项目越来越复杂的时候,出现这么一句报错,这意味着你可能需要修改很多代码,这对一个新人来讲压力很大。通常来讲,解决这个错误的办法是将需要引用的那个包抽象成接口,解耦后调用。但这不是我这个篇章想要讲的内容。这个系列主要讲的是如何从代码组织架构方面去避免这个问题。从零开始一步步搭建自己的golang框架。这个篇章将实现以下的功能:

  • 一个通用的基础框架,风格良好的代码组织架构;
  • 包含一些基本组件:日志、配置、数据库、队列等;
  • 对外提供http、websocket、rpc接口等服务。

命名规范

我们先明确一下命名规范,之后再去开始编写代码。如下:

包名: 小写字母,不分割单词,比如包名叫awesomeproject,又awesome和project组成;

文件名:同包名规范;

常量:大写字母,以下划线分割单词,比如AWESOME_CONST;

变量:小驼峰命名,比如awesomeVariable;

函数名/方法名:提供对外调用的公共方法,使用大驼峰命名,比如AwesomeFunction,私有方法,使用小驼峰。

开始

为了方便以后如果有人需要用到这个项目,我首先在GitHub上创建一个项目。

【代码篇】从零开始一步步搭建自己的golang框架

接着,使用go get拉下这个仓库:

go get "github.com/TomatoMr/awesomeframework"

【代码篇】从零开始一步步搭建自己的golang框架

最后,我们执行以下命令,为我们的项目初始化:

go mod init awesomeframework

小结

到此,我们完成了项目的初始化,下一步将会初步构建我们的代码组织架构。

欢迎关注我的公众号: onepunchgo ,会整理相关的文档和资料。

【代码篇】从零开始一步步搭建自己的golang框架

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

大学算法教程

大学算法教程

约翰森堡 / 清华大学 / 2007-6 / 69.80元

本书是美国德保罗大学DePaul University教授R.Johnsonbaugh等人长期从事算法课程教学经验的结晶,是一本关于算法基础知识和基本方法的教科书。内容包括:算法必备的数学基础、数据结构和描述算法的语言与记号;常用算法的设计分析及其正确性证明;NP和NP完全问题的特征及其近似处理方法。 全书含300多个生动有趣的算法实际示例和1450多道习题,从经典方法到最新成果,层层剖析......一起来看看 《大学算法教程》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具