区块链可以使用各种语言开发,很多开发者使用的是go语言,因为它的并发能力。所以这里对go语言进行一个汇总,节省大家时间。

首先,我们可能只是知道go是一门不错的语言,然后我们想要学习,所以我们就需要找入门资料。对于入门资料,最好是系统的。这里给大家推荐一些系统的入门资料。

入门推荐
1.Go 语言教程
http://www.runoob.com/go/go-tutorial.html

2.Go入门指南

https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/eBook/directory.md

3.Go语言圣经(中文版)

章节内容

这里都是txt版本的,所以可以直接下载,但是最好从github上阅读

gitgub地址:

https://github.com/golang-china/gopl-zh

网盘下载:
链接: https://pan.baidu.com/s/1GUj_kQoLV9Lui3_wZHDRzw 密码: uaub

4.学习go语言

本书当前包含:

安装与概述

演示了如何安装 Go 语言,并通过逐行分析源代码示例展示了 Go 语言的基本特性。

类型,变量和控制流程

函数的编写和使用

包与项目

函数和数据通过包组织在一起。这里将会看到如何编写包。对如何在包中使用单元测试也进行了介绍;

如何对一个 Go 语言的项目的目录进行设计,以及如何使用 go 命令的 vendor 功能管理包的依赖。

结构体

学习如何创建自定义数据类型,并在其上定义函数(即方法)。

接口

Go 并不支持传统意义上的面向对象。在 Go 中核心概念是接口。

并发

通过关键字 go,可以在独立的调度中运行函数,这个并行执行的函数叫做 goroutine;

通过 channel 可以在 goroutine 之间进行安全的数据通讯。

文件与通讯

如何建立/读取/写如文件。以及网络相关内容。

每章包含若干个提供了答案的练习来帮助你提升。

链接: https://pan.baidu.com/s/11tSSXiMS1GaTnI5l0LMeSQ 密码: j8ww

git地址:
https://github.com/mikespook/Learning-Go-zh-cn

视频
有的同学不喜欢看书,喜欢看视频下面也提供一些

链接:

https://pan.baidu.com/s/1S6UBobCRCk_TqTAX5czP2w

密码: gvkw
观看时最好选择网易云课程,没有广告

Go 编程基础视频:
这里面有各个平台的,土豆广告太多,可以选择网易云平台
https://github.com/Unknwon/go-fundamental-programming

教程大纲

课时数

课时标题

在线播放

第 1 课

Go 开发环境搭建

土豆网 优才网 网易云课堂

第 2 课

Go 基础知识

土豆网 优才网 网易云课堂

第 3 课

类型与变量

土豆网 优才网 网易云课堂

第 4 课

常量与运算符

土豆网 优才网 网易云课堂

第 5 课

控制语句

土豆网 优才网 网易云课堂

第 6 课

数组 array

土豆网 优才网 网易云课堂

第 7 课

切片 slice

土豆网 优才网 网易云课堂

第 8 课

map

土豆网 优才网 网易云课堂

第 9 课

函数 function

土豆网 优才网 网易云课堂

第 10 课

结构 struct

土豆网 优才网 网易云课堂

第 11 课

方法 method

土豆网 优才网 网易云课堂

第 12 课

接口 interface

土豆网 优才网 网易云课堂

第 13 课

反射 reflection

土豆网 优才网 网易云课堂

第 14 课

并发 concurrency

土豆网 优才网 网易云课堂

第 15 课

项目与坑

土豆网 优才网 网易云课堂

代码
我们学习了书籍,看了视频,我们开始一些代码的实战部分:
可以先从小例子入手

例子
当我们看书的时候,我们想做几个例子,下面是一个例子的汇总:
第一个当然是hell word哈哈哈

Hello World

Values

Variables

Constants

For

If/Else

Switch

Arrays

Slices

Maps

Range

Functions

Multiple Return Values

Variadic Functions

Closures

Recursion

Pointers

Structs

Methods

Interfaces

Errors

Goroutines

Channels

Channel Buffering

Channel Synchronization

Channel Directions

Select

Timeouts

Non-Blocking Channel Operations

Closing Channels

Range over Channels

Timers

Tickers

Worker Pools

Rate Limiting

Atomic Counters

Mutexes

Stateful Goroutines

Sorting

Sorting by Functions

Panic

Defer

Collection Functions

String Functions

String Formatting

Regular Expressions

JSON

Time

Epoch

Time Formatting / Parsing

Random Numbers

Number Parsing

URL Parsing

SHA1 Hashes

Base64 Encoding

Reading Files

Writing Files

Line Filters

Command-Line Arguments

Command-Line Flags

Environment Variables

Spawning Processes

Exec’ing Processes

Signals

Exit

上面例子由于是微信可能去掉链接,可查看链接(http://www.aboutyun.com/forum.php?mod=viewthread&tid=24344)
原文地址:
https://gobyexample.com/

项目高级

我们会了例子,可能就需要一些项目代码,下面给大家推荐一些

使用beego框架可以很快速的开发你的Web或者API应用

地址:
https://github.com/astaxie/beego

学习分布式

地址:
https://github.com/skynetservices/skynet-archive

分布式应用

地址:
https://github.com/coreos/etcd

作者:asta谢
链接:https://www.zhihu.com/question/23486344/answer/24770195

Go名库讲解
《Go名库讲解》是一套针对 Google 出品的 Go 语言的第三方库进行评测讲解的集博客、示例与语音视频为一体的综合教程,适合完成学习完成《Go编程基础》教程的学习者。
课件下载:
链接: https://pan.baidu.com/s/1G-T5FLFy0VB0LSEA_wmTGQ 密码: 68tf

课程大纲

课程标题

副标题

课时数

在线播放

课程学习指导

/

1/1

优才网 网易云课堂

goconfig - INI 解析器

goconfig 使用解析

1/1

优才网 网易云课堂

xorm - Go 语言 ORM

常见用法指导

1/2

优才网 网易云课堂

高级用法讲解
2/2

优才网 网易云课堂

goconvey - 单元测试库

优雅的单元测试

1/1

优才网 网易云课堂

Macaron - 模块化 Web 框架

初识 Macaron

1/?

优才网 网易云课堂

核心服务的使用
2/?

优才网 网易云课堂

自定义服务
3/?

优才网 网易云课堂

地址:
https://github.com/Unknwon/go-rock-libraries-showcases

其它书籍推荐

go学习笔记
pdf
182页

Go语言教程
pdf
103页
下载链接:
链接: https://pan.baidu.com/s/1JuGXDNKCNYcdXrDn8NP0Yw 密码: c2te

其它更多书籍25文档:

链接: https://pan.baidu.com/s/1GmGdKhP6WClDxbuEqBKjiQ 密码: mi5z

其它:
当然这里还搜集了其它学习资料,大家可参考:

上面是一些比较系统的
go社区:
https://www.studygolang.com/articles

Go官方
http://golang.org/

Go代码
http://code.google.com/p/go/
http://code.google.com/p/gomingw/downloads/list

Go 语言中文翻译项目
http://code.google.com/p/golang-china/

Go语言中文论坛
http://bbs.golang-china.org/

go的eclipse插件
http://code.google.com/p/goclipse/

go代码提示
https://github.com/nsf/gocode

http://go-lang.cat-v.org/

相关的blog:

风云blog go学习笔记:http://blog.codingnow.com/eo/go_oieno/

blog: http://www.lubia.me/?tag=golang

beego(beego框架的作者): http://blog.beego.me/

博客:http://the5fire.com

官方资源

版本安装

官网首页 (发布版 weekly)

开发路线 (发布版 weekly)

Go1版信息 (博文 计划 反馈帖 发版需解决问题)

安装说明 (发布版 weekly 译1 译2)

Weekly版 (源码 历史 发布2012-01-20 宣布帖)

Release版 (源码 历史 发布2011-10-17 r60.3)

Windows版 (当前下载 历史下载)

Build状态 (查看)

参考手册

标准包 (发布版 weekly 译)

命令工具 (发布版 weekly 译1 译2)

语言规范 (发布版 weekly 译1 译2)

社区项目 (分类查看 安装统计) 可用goinstall安装

学习资料

官方博客 (网址)

社区Wiki (网址)

常见问题 (发布版 weekly 译)

Go在线运行 (运行分享 例子代码 chrome插件)

Go语言之旅 (英文版 源码 译1 译2 中文版)

Go语言教程 (发布版 weekly 译1 译2 译3)

三日教程 (第一天:基础 PDF下载)

(第二天:类型、方法、接口 PDF下载)

(第三天:并发和通讯 PDF下载)

Go语言有效编程 (发布版 weekly 译1 译2 译3)

如何编写Go程序 (发布版 weekly 译1 译2)

语言内存模型 (发布版 weekly 译)

C++程序员指南 (发布版 weekly 译)

使用GDB调试Go代码 (发布版 weekly)

Codewalks:代码漫步 (发布版 weekly)

Codelab:编写Web程序 (发布版 weekly 译)

项目开发

Go项目 (首页 Build状态 源码浏览 提交日志 贡献准则)

Go问题 (提交 所有 Windows 需外界帮助 Go1发版需解决)

GAE支持 (概述 翻译 运行时环境)

gccgo前端 (首页 安装使用 贡献说明)

cat-v

大学Go培训课程情况

Go语言其他实现

Go支持的CPU架构

Go支持的操作系统

各操作系统下的安装包

博客

邢兴 柴树杉 HowardFan 云风 许式伟 lvyi BianJiang DCCMX

刘洪清 贝塔熊 Linxs 科技博 陈钢 王益 Crane 无心云

熟悉API

API:多看官方的GO包类,熟悉各个功能模块接口。

GITHUB上的推荐项目:

1.GO与MYSQL的结合使用(作为入门熟悉)
https://github.com/Go-SQL-Driver/MySQL
https://github.com/Go-SQL-Driver/MySQL/wiki/Examples