go语言相关资料

Go 语言教程

Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。

Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。

Go 语言特色

简洁、快速、安全
并行、有趣、开源
内存管理、v数组安全、编译迅速

计算机软件经历了数十年的发展,形成了多种学术流派,有面向过程编程、面向对象编程、函数式编程、面向消息编程等,这些思想究竟孰优孰劣,众说纷纭。

除了OOP外,近年出现了一些小众的编程哲学,Go语言对这些思想亦有所吸收。例如,Go语言接受了函数式编程的一些想法,支持匿名函数与闭包。再如,Go语言接受了以Erlang语言为代表的面向消息编程思想,支持goroutine和通道,并推荐使用消息而不是共享内存来进行并发编程。总体来说,Go语言是一个非常现代化的语言,精小但非常强大。

Go 语言最主要的特性:

  • 自动垃圾回收
  • 更丰富的内置类型
  • 函数多返回值
  • 错误处理
  • 匿名函数和闭包
  • 类型和接口
  • 并发编程
  • 反射
  • 语言交互性

Go 语言用途

Go 语言被设计成一门应用于搭载 Web 服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。

对于高性能分布式系统领域而言,Go 语言无疑比大多数其它语言有着更高的开发效率。它提供了海量并行的支持,这对于游戏服务端的开发而言是再好不过了。

Go语言环境安装

可以参考菜鸟教程的Go 语言环境安装
Go 语言支持以下系统:

  • Linux
  • Mac OS X
  • Windows
    安装包下载地址为:https://golang.org/dl/。

如果打不开可以使用这个地址:https://golang.google.cn/dl/。

各个系统对应的包名:

操作系统 包名
Windows go1.14.3.windows-amd64.msi
Linux go1.14.3.linux-amd64.tar.gz
Mac go1.14.3.darwin-amd64.pkg
Source go1.14.3.src.tar.gz
https://golang.org/dl/

UNIX/Linux/Mac OS X 安装 go

以下介绍了在UNIX/Linux/Mac OS X系统下使用源码安装方法:

1、下载二进制包:go1.14.3.linux-amd64.tar.gz。

2、将下载的二进制包解压至 /usr/local目录。

tar -C /usr/local -xzf go1.14.3.linux-amd64.tar.gz

3、将 /usr/local/go/bin 目录添加至PATH环境变量:

export PATH=$PATH:/usr/local/go/bin

Windows 系统下安装 go

Windows 下可以使用 .msi 后缀(在下载列表中可以找到该文件,如go1.14.3.windows-amd64.msi)的安装包来安装。

默认情况下 .msi 文件会安装在 c:\Go 目录下。你可以将 c:\Go\bin 目录添加到 Path 环境变量中。添加后你需要重启命令窗口才能生效。

第一个 Go 程序

接下来我们来编写第一个 Go 程序 hello.go(Go 语言源文件的扩展是 .go),代码如下:

实例

package main

 import "fmt"

 func main() {
     fmt.Println("Hello, World!")
 }

执行以上代码输出

$ go run hello.go 
Hello, World!

go语言相关学习资料

  • Go 语言官方教程中文版
  • https://github.com/Go-zh/tour
  • Go语言之旅
  • awesome-go
    A curated list of awesome Go frameworks, libraries and software https://awesome-go.com/
  • Go编程语言
  • Go 语言教程-菜鸟教程
  • learn-go-with-tests
    Learn Go with test-driven development
  • Ultimate Go study guide
  • go语言中文网
  • Go参考手册
  • Go by Example 中文版
  • Go by Example 英文原版
  • Go 101
  • Effective Go
  • GO语言学习资源整理
  • GO语言学习资料(视频+源码+电子书)免费领取
  • Go语言学习资料大全

go语言的相关视频

  • Google I/O 2012 - Go Concurrency Patterns
  • Google I/O 2013 - Advanced Go Concurrency Patterns

GO语言学习资源整理

首推 Go by Example作为你的入门教程。然后,Go 101也是一个很不错的在线电子书。如果你想看纸书的话,The Go Programming Language 一书在豆瓣上有 9.2 分,但是国内没有卖的。

另外,Go 语言官方的 Effective Go 是必读的,这篇文章告诉你如何更好地使用 Go 语言,以及 Go 语言中的一些原理。

Go 语言最突出之处是并发编程,Unix 老牌黑客罗勃·派克(Rob Pike)在 Google I/O 上的两个分享,可以让你学习到一些并发编程的模式。

Go Concurrency Patterns( 幻灯片和演讲视频)。
Advanced Go Concurrency Patterns(幻灯片、演讲视频)。
然后,Go 在 GitHub 的 wiki 上有好多不错的学习资源,你可以从中学习到多。比如:

  • Go 精华文章列表。
  • Go 相关博客列表。
  • Go Talks。
    还有个内容丰富的 Go 资源列表 Awesome Go,推荐看看。

你可能感兴趣的:(go语言相关资料)