Go 语言教程

分类:后端教程
标签:

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

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


Go 语言特色

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

Go 语言用途

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

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


第一个 Go 程序

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

实例

12
运行实例 »

执行以上代码输出


$ go run hello.go 
Hello, World!

目录

标题 说明
Go 语言环境安装 Go 语言环境安装 Go 语言支持以下系统:Linux FreeBSD Mac OS X(也称为 Darwin) Window安装包下载地址为:。 各个系统对应的包名:操作系统包名 Windowsgo1.4.windows-amd64.msi Linuxgo1.4.linux-amd64.tar.gz Macgo1.4.darwin-amd64-osx10.8.pkg FreeBSDgo1.4.freebsd-amd64.tar.gz/Mac OS X, 和 FreeBSD 安装 以下介绍了在/Mac
Go 语言结构 Go 语言结构在我们开始学习 GO 编程语言的基础构建模块前,让我们先来了解 Go 语言最简单程序的结构。 Go Hello World 实例 Go 语言的基础组成有以下几个部分:包声明 引入包 函数 变量 语句 & 表达式 注释 接下来让我们来看下简单的代码,该代码输出了"Hello World!": package mainimport "fmt"func main() { /* 这是我的第一个简单的程序 */ fmt.Println("Hello, World!")} 让我们来看下以上程序
Go 语言基础语法 Go 语言基础语法 上一章节我们已经了解了 Go 语言的基本组成结构,本章节我们将学习 Go 语言的基础语法。Go 标记 Go 程序可以由多个标记组成,可以是关键字,标识符,常量,字符串,符号。如以下 GO 语句由 6 个标记组成: fmt.Println("Hello, World!") 6 个标记是(每行一个): 1. fmt2. .3. Println4. (5. "Hello, World!"6. )行分隔符 在 Go 程序中,一行代表一个语句结束。
Go 语言数据类型 Go 语言数据类型在 Go 编程语言中,数据类型用于声明函数和变量。数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。 Go 语言按类别有以下几种数据类型:序号类型和描述 1布尔型布尔型的值只可以是常量 true 或者 false。
Go 语言变量 Go 语言变量变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。 Go 语言变量名由字母、数字、下划线组成,其中首个字母不能为数字。 声明变量的一般形式是使用 var 关键字:var identifier type 变量声明 第一种,指定变量类型,声明后若不赋值,使用默认值。
Go 语言常量 Go 语言常量常量是一个简单值的标识符,在程序运行时,不会被修改的量。 常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型。 常量的定义格式: const identifier [type] = value 你可以省略类型说明符 [type],因为编译器可以根据变量的值来推断其类型。
Go 语言运算符 Go 语言运算符 运算符用于在程序运行时执行数学或逻辑运算。 Go 语言内置的运算符有:算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 其他运算符接下来让我们来详细看看各个运算符的介绍。算术运算符 下表列出了所有Go语言的算术运算符。
Go 语言条件语句 Go 语言条件语句条件语句需要开发者通过指定一个或多个条件,并通过测试条件是否为 true 来决定是否执行指定语句,并在条件为 false 的情况在执行另外的语句。 下图展示了程序语言中条件语句的结构:Go 语言提供了以下几种条件判断语句:语句描述 if 语句if 语句 由一个布尔表达式后紧跟一个或多个语句组成。
Go 语言循环语句 Go 语言循环语句 在不少实际问题中有许多具有规律性的重复操作,因此在程序中就需要重复执行某些语句。 以下为大多编程语言循环程序的流程图:Go 语言提供了以下几种类型循环处理语句:循环类型 描述 for 循环 重复执行语句块 循环嵌套 在 for 循环中嵌套一个或多个 for 循环 循环控制语句 循环控制语句可以控制循环体内语句的执行过程。
Go 语言函数 Go 语言函数 函数是基本的代码块,用于执行一个任务。 Go 语言最少有个 main() 函数。 你可以通过函数来划分不同功能,逻辑上每个函数执行的是指定的任务。 函数声明告诉了编译器函数的名称,返回类型,和参数。 Go 语言标准库提供了多种可动用的内置的函数。
Go 语言变量作用域 Go 语言变量作用域 作用域为已声明标识符所表示的常量、类型、变量、函数或包在源代码中的作用范围。 Go 语言中变量可以在三个地方声明:函数内定义的变量称为局部变量 函数外定义的变量称为全局变量 函数定义中的变量称为形式参数接下来让我们具体了解局部变量、全局变量和形式参数。
Go 语言数组 Go 语言数组 Go 语言提供了数组类型的数据结构。 数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整形、字符串或者自定义类型。 相对于去声明number0, number1, ..., and number99的变量,使用数组形式numbers[0], numbers[1] ..., numbers[99]更加方便且易于扩展。
Go 语言指针 Go 语言指针 Go 语言中指针是很容易学习的,Go 语言中使用指针可以更简单的执行一些任务。 接下来让我们来一步步学习 Go 语言指针。 我们都知道,变量是一种使用方便的占位符,用于引用计算机内存地址。 Go 语言的取地址符是 &,放到一个变量前使用就会返回相应变量的内存地址。
Go 语言结构体 Go 语言结构体 Go 语言中数组可以存储同一类型的数据,但在结构体中我们可以为不同项定义不同的数据类型。 结构体是由一系列具有相同类型或不同类型的数据构成的数据集合。 结构体表示一项记录,比如保存图书馆的书籍记录,每本书有以下属性:Title :标题 Author : 作者 Subject:学科 ID:书籍ID 定义结构体 结构体定义需要使用 type 和 struct 语句。
Go 语言切片(Slice) Go 语言切片(Slice) Go 语言切片是对数组的抽象。 Go 数组的长度不可改变,在特定场景中这样的集合就不太适用,Go中提供了一种灵活,功能强悍的内置类型切片("动态数组"),与数组相比切片的长度是不固定的,可以追加元素,在追加时可能使切片的容量增大。
Go 语言范围(Range) Go 语言范围(Range)Go 语言中 range 关键字用于for循环中迭代数组(array)、切片(slice)、链表(channel)或集合(map)的元素。在数组和切片中它返回元素的索引值,在集合中返回 key-value 对的 key 值。
Go 语言Map(集合) Go 语言Map(集合)Map 是一种无序的键值对的集合。Map 最重要的一点是通过 key 来快速检索数据,key 类似于索引,指向数据的值。Map 是一种集合,所以我们可以像迭代数组和切片那样迭代它。不过,Map 是无序的,我们无法决定它的返回顺序,这是因为 Map 是使用 hash 表来实现的。
Go 语言递归函数 Go 语言递归函数递归,就是在运行的过程中调用自己。语法格式如下: func recursion() { recursion() /* 函数调用自身 */}func main() { recursion()} Go 语言支持递归。但我们在使用递归时,开发者需要设置退出条件,否则递归将陷入无限循环中。
Go 语言类型转换
Go 语言接口 Go 语言接口Go 语言提供了另外一种数据类型即接口,它把所有的具有共性的方法定义在一起,任何其他类型只要实现了这些方法就是实现了这个接口。 实例 /* 定义接口 */type interface_name interface { method_name1 [return_type] method_name2 [return_type] method_name3 [return_type] ... method_namen [return_type]}/* 定义结构体 */type struct_nam
Go 错误处理 Go 错误处理Go 语言通过内置的错误接口提供了非常简单的错误处理机制。 error类型是一个接口类型,这是它的定义:type error interface {Error() string}我们可以在编码中通过实现 error 接口类型来生成错误信息。
Go 语言开发工具 Go 语言开发工具 LiteIDE LiteIDE是一款开源、跨平台的轻量级Go语言集成开发环境(IDE)。 支持的操作系统Windows x86 (32-bit or 64-bit) Linux x86 (32-bit or 64-bit)下载地址 : 源码地址 :Eclipse Eclipse也是非常常用的开发利器,以下介绍如何使用Eclipse来编写Go程序。

现在开始学习Go 语言教程第一章 : Go 语言环境安装


本教程固定链接:http://www.rumen5.com/61387.html

上一篇:Node.js 教程

下一篇:Lua 教程

QQ空间新浪微博腾讯微博人人网微信