初始Go语言

GO语言是一门年轻的语言,目前仍在不断的发展中。不过,相比于其他的系统语言,其展现的强大功能毫不逊色。其主要特点如下:

  • 运行效率高,开发高效,部署简单
  • 语言层面支持并发,易于利用多核实现并发
  • 内置 runtime ,作用相当于性能监控和垃圾回收等
  • 简单易学,标准库丰富,此外,其网络功能非常强大
  • 内置强大的工具(gofmt),跨平台编译,内核却能够内嵌C支持

1 GO语言的应用领域

在如此众多强大功能的基础上,GO语言迅速在各领域展开应用,主要包括:

  • 服务器编程:如日志处理,数据打包,虚拟机处理,文件系统等
  • 分布式系统, 数据库代理器,中间件等
  • 网络编程: 这一块目前的应用最为广泛
  • 云服务: 广泛应用于容器技术,编排技术等。目前的主流云平台都在逐步用GO实现。

2 GO环境验证

在终端中执行命令:go version,可以检查是否正确安装了Go环境并设置了环境变量。

3 获取扩展目录的命令

go get github.com/用户名/项目名

4 其他常用GO语言命令行工具介绍

  1. go build
    用于编译源码文件,代码包,依赖包
  2. go run
    可以编译并运行GO源码文件
  3. go get
    用来动态获取远程扩展代码包

5 GO基础语法——关键字和标识符

GO语言中共有25个关键字,不值得为了这个单独开一个语法文章,仅作为GO语言基础介绍的一个小章节。

关键字如下:

break default func interface select
case defer go map struct
chan else goto if range
const fallthrough package switch type
continue for import return var

GO语言中标识符共有36个,其中包括基础数据类型系统内嵌函数
标识符如下:

append bool byte cap close complex
complex64 omplex128 uint16 copy false float32
float64 imag int int8 int16 int32
uint32 int64 iota len make new
nil panic uint64 print println real
recover string true uint uint8 uintprt

6 GO基础语法——基础结构

Go语言中基础结构如下:


一个基础的GO语言源文件

上图展现的是一个基础的GO语言源文件结构,其中。在文件最上面要使用 package 关键字来定义文件所属于的包,使用 const 关键字定义常量, var关键字定义变量, 使用import 关键字导入其他包等。

另外,注释可以使用单行注释和多行注释,形式和JAVA语言一致,此处不再赘述。

7 GO基础语法——package

package是最基本的分发单位和工程管理中依赖关系的体现。每个GO语言源代码文件的开头都必须拥有一个package什么,表示源码文件所丛属的代码包。

要生成GO语言可执行程序,必须要有main的package包,且必须在该包下有main()函数。

同一个路径下只能存在一个package,一个package可以拆成多个源文件组成。

8 GO基础语法——import

import语句可以导入源代码文件所依赖的package包。例如,要导入testPackage包下面的testgo.go文件,使用语句:import "testPackage/testgo"。一个典型的多包模块使用形式如下:

多包模块使用形式

import语法的两种格式:

两种import语法

import的导入顺序

  • 如果导入的包中依赖其他包(包B),会首先导入B包,然后初始化B包中的常量和变量,最后,如果B包中有init,会自动执行init();
  • 所有包导入完成后才会对main中常量和变量进行初始化,然后执行main中的init函数(如果存在),最后执行main函数。


    import导入顺序
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,033评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,725评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,473评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,846评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,848评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,691评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,053评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,700评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,856评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,676评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,787评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,430评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,034评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,990评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,218评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,174评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,526评论 2 343