GO语言
文章平均质量分 89
随着区块链的火热,作为区块链技术的首选开发语言 - Go语言也随之火热,Go语言以其简单、轻便易上手、支持高并发的优势迅速在众多的语言中脱颖而出。笔者也是在参与开发区块链的过程中接触到了Go语言,并深深为之着迷,现将Go语言的教程分享给大家,让更多人有机会能学习和了解Go语言。
回首笑人间
有志者事竟成,百二秦关终属楚;
苦心人天不负,三千越甲可吞吴。
展开
-
Go语言规范汇总
文章目录统一规范篇合理规划目录GOPATH设置import 规范代码风格大小约定命名篇基本命令规范项目目录名包名文件名常量变量变量申明变量命名惯例全局变量名局部变量名循环变量结构体(struct)接口名函数和方法名参数名返回值开发篇包魔鬼数字常量 & 枚举结构体运算符函数参数返回值注释错误其他参数传递注意闭包的调用优化篇质量保证代码质量保证优先原则对外接口原则值与指针(T/*T)的使用原则...原创 2019-03-25 19:44:18 · 954 阅读 · 0 评论 -
Go语言规范4 - 优化篇
文章目录优化篇4.1 质量保证4.1.1 代码质量保证优先原则4.1.2 对外接口原则4.1.3 值与指针(T/*T)的使用原则4.1.4 init的使用原则4.1.5 defer的使用原则4.1.6 Goroutine使用原则4.1.7 Channel使用原则4.1.8 其它4.2 性能效率4.2.1 Memory优化4.2.2 ...原创 2019-03-25 19:43:41 · 585 阅读 · 0 评论 -
Go语言规范3 - 开发篇
文章目录开发篇3.1 包第三方包管理3.2 魔鬼数字3.3 常量 & 枚举3.4 结构体3.5 运算符3.6 函数3.7 参数3.8 返回值3.9 注释通用注释要求包注释要求函数与方法注释要求变量和常量的注释要求编码注释Bug的注释带mutex的struct必须是指针receiversrecieved是值类型还是指针类型其他注释要求3.10 错误3.11 其他参数传递自定...原创 2019-03-25 19:42:55 · 1140 阅读 · 0 评论 -
Go语言规范2 - 命名篇
文章目录命名篇2.1 基本命令规范2.2 项目目录名2.3 包名2.4 文件名2.5 常量2.6 变量变量申明变量命名惯例全局变量名局部变量名循环变量2.7 结构体(struct)2.8 接口名2.9 函数和方法名函数方法2.10 参数名2.11 返回值命名篇本篇以开发时从上往下的顺序既:开发前约定的基本命名规范、包、常量、变量、结构体、参数、返回值的顺序讲解了开发中各个环...原创 2019-03-25 19:42:12 · 1394 阅读 · 0 评论 -
Go语言规范1 - 统一规范篇
文章目录序言目录统一规范篇1.1 合理规划目录1.2 GOPATH设置1.3 import 规范1.4 代码风格1.5 大小约定参考链接序言看过很多方面的编码规范,可能每一家公司都有不同的规范,这份编码规范是写给我自己的,同时希望我们公司内部同事也能遵循这个规范来写Go代码。如果你的代码没有办法找到下面的规范,那么就遵循标准库的规范,多阅读标准库的源码,标准库的代码可以说是我们写代码...原创 2019-03-25 19:41:31 · 794 阅读 · 0 评论 -
Go语言从入门到精通 -【web项目实战篇】- 完整的web项目
本节核心内容介绍项目的目录结构介绍包括文件读取、日志、mysql、路由、http、json数据处理等技术介绍自定义错误码通过实战代码演练创建一个基础的web项目本小节视频教程和代码:百度网盘,密码z2ua可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。HTTP API 服务器启动流程目录结构在开发中,一个良好的目录结构是很重要的,好的目录结构不仅能使...原创 2019-03-25 19:48:26 · 8296 阅读 · 4 评论 -
Go语言从入门到精通 -【web项目实战篇】- API 流程和代码结构
API 流程和代码结构为了使读者在开始实战之前对 API 开发有个整体的了解,这里选择了两个流程来介绍:HTTP API 服务器启动流程HTTP 请求处理流程本小节也提前给出了程序代码结构图,让读者从宏观上了解将要构建的 API 服务器的功能。本小节视频教程和代码:百度网盘,密码gdas可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。HTTP API 服务...原创 2019-03-25 19:50:17 · 505 阅读 · 0 评论 -
Go语言从入门到精通 -【web项目实战篇】- MySQL的事物
本节核心内容介绍了为什么要使用事物介绍事物对象的常用方法介绍事物的应用场景介绍事物的ACID演示了事物的示例代码介绍开发中需要注意的点本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。事务(transaction)事物:保持逻辑数据一致性与可恢复性,必不可少的利器!为什么要使用事务银行转账是经典的解释事务的例子,如...原创 2019-03-20 20:40:26 · 255 阅读 · 0 评论 -
Go语言从入门到精通 -【web项目实战篇】- MySQL的CRUD
本节核心内容介绍MySQL中的基于sql.DB的常用方法介绍MySQL预处理的优势和流程原理介绍基于预处理方式的CRUD代码如何编写介绍一些开发中的注意事项本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。基于sql.DB的常用方法介绍DB.Query &...原创 2019-03-20 20:40:02 · 245 阅读 · 0 评论 -
Go语言从入门到精通 -【web项目实战篇】- MySQL的初始化
本节核心内容介绍链接MySQL有哪些必备条件介绍Mysql配置文件的配置规则介绍如何连接数据库讲解在初始化时的注意事项和常见问题本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。简介Golang 提供了database/sql包用于对SQL数据库的访问, 作为操作数据库的入口对象sql.DB, 主要为我们提供了两个重要的功能:...原创 2019-03-20 20:39:40 · 256 阅读 · 0 评论 -
Go语言从入门到精通 -【web项目实战篇】- Json详解
本节核心内容介绍GoLang自带的json包的核心功能方法介绍如何利用Tag对Json结构体实现更多的控制介绍Json的编码器和解码器介绍如何解决复合结构体的数据读取问题介绍了开发中一些常见问题和解决方案介绍了比原生json包更快的json解析库本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。简介JSON(JavaScr...原创 2019-03-20 20:39:15 · 358 阅读 · 0 评论 -
Go语言从入门到精通 -【web项目实战篇】- Log日志
本节核心内容介绍log包的核心数据结构介绍log包的核心方法演示了开发中的使用demo本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。Log包简介Golang的log包短小精悍,可以非常轻松的实现日志打印转存功能。并且log支持并发操作(即协程安全-相对于JAVA中的线程安全而言),本小节将对log包的log.go文件以剖析的...原创 2019-03-20 20:38:36 · 348 阅读 · 0 评论 -
Go语言从入门到精通 -【web项目实战篇】- 搭建Web服务器
本节核心内容介绍使用net/http包创建HTTP服务介绍使用net/http包建立Web服务器介绍Gin框架本小节视频教程和代码:百度网盘;密码6ejd可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。想查看Gin源码的朋友可自行查看Gin框架官方地址搭建一个简单的Web服务器Go语言标准库 - net/http这里给大家提供一个学习Go语言的一个...原创 2019-03-20 20:38:06 · 560 阅读 · 0 评论 -
Go语言从入门到精通 -【web项目实战篇】- 读取配置文件
本节核心内容介绍 Viper介绍 如何配置 Viper 并读取其配置,以及配置的高级用法本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。附带golang.org包的下载地址Viper 简介Viper 是国外大神 spf13 编写的开源配置解决方案,具有如下特性:设置默认值可以读取如下格式的配置文件:JSON、TOML、Y...原创 2019-03-14 20:46:13 · 353 阅读 · 0 评论 -
Go语言从入门到精通 - 初识Go语言
Go语言从入门到精通 - 初识Go语言目录初识Go语言 Go语言特点 Go语言优势 Go语言劣势 Go语言用途 视频教程: 感言 初识Go语言Go,全称golang,是Google开发的一种静态强类型、编译型、并发型并具有垃圾回收功能的编程语言。 Go从2007年末由Robert Griesemer、Rob Pike、Ken Thompson(C语言发明者)...原创 2018-12-12 19:34:00 · 3513 阅读 · 2 评论 -
Go语言从入门到精通 - GoLand安装配置
GoLand安装配置目录下载 安装 破解 运行 参考网址 GoLand配置下载1 下载路径:https://pan.baidu.com/s/1JJ-Oxx9NkEK-PrwcvLys7Q,提取码:o0e5 2 下载 goland-2018.2.1.exe安装1 安装goland-2018.2.1.exe文件,安装完成后不要打开 2 安装路径如:D:\Pro...原创 2019-01-12 16:07:00 · 862 阅读 · 0 评论 -
Go语言从入门到精通 - 包
本节核心内容介绍 Go语言中包的概念介绍 Go语言中包的几种引入方法介绍 Go语言中如何解决包引入的问题本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。包包的概念和源文件Go程序是通过把包链接到一起构成的。包是由一个个定义了属于该包的常量、类型、变量、函数(它们可以被同一个包内的所有文件访问,也可以通过导出而被其他的包使用)...原创 2019-03-18 19:28:24 · 501 阅读 · 0 评论 -
Go语言从入门到精通 - 变量的声明
本节核心内容介绍 Go语言变量的声明格式介绍 Go语言常见的变量类型介绍 Go语言变量的初始化介绍 Go语言变量的批量声明本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。Go语言变量的声明(使用var关键字)变量(Variable)的功能是存储用户的数据。不同的逻辑有不同的对象类型,也就有不同的变量类型。经过半个多世纪的发展...原创 2019-03-18 19:26:33 · 171 阅读 · 0 评论 -
Go语言从入门到精通 - 变量的初始化
本节核心内容介绍 Go语言中初始化变量的默认值介绍 变量初始化的标准格式介绍 编译器自动推导类型的格式介绍 如何实现短变量声明并初始化本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。Go语言变量的初始化Go 语言在声明变量时,自动对变量对应的内存区域进行初始化操作。每个变量会初始化其类型的默认值,例如:整型和浮点型变量的...原创 2019-03-18 19:27:49 · 176 阅读 · 0 评论 -
Go语言从入门到精通 - 多个变量同时赋值
本节核心内容介绍 如何对多个变量进行赋值本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。Go语言多个变量同时赋值编程最简单的算法之一,莫过于变量交换。交换变量的常见算法需要一个中间变量进行变量的临时保存。用传统方法编写变量交换代码如下:var a int = 100var b int = 200var t intt = a...原创 2019-03-18 19:28:56 · 1000 阅读 · 0 评论 -
Go语言从入门到精通 - 匿名变量
本节核心内容介绍 如何使用匿名变量本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。匿名变量在使用多重赋值时,如果不需要在左值中接收变量,可以使用匿名变量(anonymous variable)。匿名变量的表现是一个下画线_,使用匿名变量时,只需要在变量声明的地方使用下画线替换即可。例如:func GetData() (int,...原创 2019-03-18 19:29:17 · 186 阅读 · 0 评论 -
Go语言从入门到精通 - 数据类型
本节核心内容介绍 Go 语言数据类型介绍 使用整形、浮点型、bool类型变量时的注意事项本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。Go 语言数据类型在 Go 编程语言中,数据类型用于声明函数和变量。数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。G...原创 2019-03-18 19:29:42 · 229 阅读 · 0 评论 -
Go语言从入门到精通 - 字符串
本节核心内容介绍 如何Go语言中的字符串类型介绍 Go语言中字符串转义符有哪些介绍 字符串是基于什么编码实现的介绍 如何定义多行字符串变量本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。Go语言字符串字符串在 Go 语言中以原生数据类型出现,使用字符串就像使用其他原生数据类型(int、bool、float32、float64...原创 2019-03-18 19:30:05 · 246 阅读 · 0 评论 -
Go语言从入门到精通 - 字符类型
本节核心内容介绍 什么是字符串的字符类型介绍 如何Go语言字符类型byte和rune是什么介绍 UTF-8 和 Unicode编码的字符串有何区别本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。Go语言字符类型(byte和rune)字符串中的每一个元素叫做“字符”,在遍历或者单个获取字符串元素时可以获得字符。Go 语言的字符...原创 2019-03-18 19:30:31 · 168 阅读 · 0 评论 -
Go语言从入门到精通 - 数组
本节核心内容介绍 什么是数组介绍 如何在Go语言中声明数组介绍 如何对数组进行初始化介绍 如何遍历一个数组获取元素的值本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。Go语言数组详解Go 语言提供了数组类型的数据结构。数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整形、字符串或者...原创 2019-03-18 19:31:00 · 219 阅读 · 0 评论 -
Go语言从入门到精通 - 【精华篇】fmt包详解
包fmtimport “fmt”软件包fmt实现了格式化的I / O,其功能类似于C的printf和scanf。格式’动词’来自C,但更简单。Printing已有示例代码:type Person struct { Name string}通用:占位符说明示例输出%v相应值的默认格式Printf("%v",person ){zhangsan}...原创 2019-03-20 20:29:37 · 481 阅读 · 0 评论 -
Go语言从入门到精通 - 【精华篇】字符串常用方法总结
Golang 字符串操作小结,字符串函数主要集中在 strings 和 strconv 中,本文介绍使用方法,给出一个函数接口,然后匹配相关example。string包字符串比较函数接口// Compare比较字符串的速度比字符串内建的比较要快func Compare(a, b string) int示例代码fmt.Println(strings.Compare(string...原创 2019-03-20 20:30:52 · 272 阅读 · 0 评论 -
Go语言从入门到精通 - 【精华篇】strconv包详解
本节核心内容介绍 Go语言的strconv包介绍 开发中几种常用类型的转换方法本小节视频教程和代码:百度网盘可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。strconv包简介在Go语言中,我们往往需要对一些常用的数据类型进行转换,如string,int,int64 ,float等数据类型之间的转换,基于此Go语言为我们提供了一个名为strconv的包来为我...原创 2019-03-20 20:30:06 · 446 阅读 · 0 评论