文章目录

  • 一、go 基础
    • 0. 什么是golang
    • 1. GOPATH
      • 为什么要配置GOPATH
    • 2. go程序入口
    • 3. go交叉编译
  • 三、go常用命令
    • go get 命令
      • 解决go get无法下载被墙的包
  • 四、go语言入门
    • go程序开发注意事项
    • go命名规范
    • go定义变量
    • go语言中&和*区别
    • Go语言指针
    • Go语言 type关键字
    • go import用法
    • go mod的使用 go.mod文件
      • go mod 是什么?
      • go mod 使用步骤
    • go context 包
    • defer函数
    • const 定义常量
    • Go语言中new()和 make()
    • Channel类型/Go语言 Channel <- 箭头操作符 (chan int)
    • go语言 go关键字 协程
      • go func(){}()
      • golang 同步等待所有协程执行完毕sync WaitGroup
      • Golang 并行运算以及time/sleep.go
    • for
    • Go 语言 select 语句
    • go语言 定义函数的方式、定义方法
    • 何为[]byte? go字节数组
    • golang中的空结构体 channel := make(chan struct{})
    • go map的定义和使用 键值对存储
    • go sync.Mutex
    • 特殊变量 下划线 (_)
    • golang 自定义接口 和 实现接口
    • golang中的三个点 '...' 的用法
    • golang 打印变量类型
  • 五、其他
    • 工作中常见通用问题总结
      • exec: "gcc": executable file not found in %PATH%
      • pkg-config: exec: "pkg-config": executable file not found in %PATH%
      • go 异常panic和恢复recover用法
        • Go语言宕机(panic)——程序终止运行
  • 六、参考

一、go 基础

0. 什么是golang

Golang一般指go。 Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态强类型、编译型语言。Go 语言语法与 C 相近,但功能上有:内存安全,GC(垃圾回收),结构形态及 CSP-style 并发计算。

1. GOPATH

GOPATH
参考URL: https://www.jianshu.com/p/cf298a0db3fa

从 Go 1.8 版本开始,Go 开发包在安装完成后,将 GOPATH 赋予了一个默认的目录,参见下表

GOPATH是用于指定你的workspace 的环境变量,它内部目录一般为:
$HOME/go
–bin # 存放编译后的可执行文件
–pkg # 依赖包编译后的*.a文件
–src # 项目源代码的存放路径

使用命令行查看GOPATH信息

go env |grep GOPATH

为什么要配置GOPATH

go 命令依赖一个重要的环境变量:$GOPATH1

配置GOPATH的用意是为了方便项目的部署和构建,以及可以直接使用go get 命令下载第三方的包到自己的项目的src下和相关的执行文件bin目录,和中间文件pkg

1.src 存放源代码(比如:.go .c .h .s等)
2.pkg 编译后生成的文件(比如:.a)
3.bin 编译后生成的可执行文件(为了方便,可以把此目录加入到 PATH变量中,如果有多个gopath,那么使用PATH 变量中,如果有多个gopath,那么使用PATH变量中,如果有多个gopath,那么使用{GOPATH//

Go (Golang) 语言-快速开始相关推荐

  1. Golang语言快速上手到综合实战(Go语言、Beego框架、高并发聊天室、豆瓣电影爬虫) 下载

    下载Golang语言快速上手到综合实战(Go语言.Beego框架.高并发聊天室.豆瓣电影爬虫) 下载地址:请加QQ:397245854 Go是Google开发的一种编译型,可并行化,并具有垃圾回收功能 ...

  2. Golang语言快速上手到综合实战视频教程

    百度网盘下载 01.Go语言简介-.wmv 02.理解GOPATH.wmv 03.Go语言基础上.wmv 2 Y& ~9 }) P' U4 O 04.Go语言基础下.wmv 05.Go语言之流 ...

  3. golang 命令行_如何使用Golang编写快速有趣的命令行应用程序

    golang 命令行 by Peter Benjamin 彼得·本杰明(Peter Benjamin) 如何使用Golang编写快速有趣的命令行应用程序 (How to write fast, fun ...

  4. hbase rest api接口链接管理【golang语言版】

    # go-hbase-rest hbase rest api接口链接管理[golang语言版] 关于hbase的rest接口的详细信息可以到官网查看[http://hbase.apache.org/b ...

  5. 语言与golang语言运行速度_Golang语言情怀第13期 Go 语言设计模式 介绍

    设计模式是什么 俗话说:站在别人的肩膀上,我们会看得更远.设计模式的出现可以让我们站在前人的肩膀上,通过一些成熟的设计方案来指导新项目的开发和设计,以便于我们开发出具有更好的灵活性和可扩展性,也更易于 ...

  6. golang语言 []interface{}和interface{}

    文章目录 golang语言 []interface{} interface(接口) interface应用场景 interface{} 空接口 []interface{} golang中为什么[]st ...

  7. Golang语言全栈开发视频教程全集

    基础课: 语言基础第01天(变量和基本类型) 语言基础第02天(运算符和流程控制) 语言基础第03天(循环函数和工程管理) 语言基础第04天(工程管理和数组) 语言基础第05天(切片和map) 语言基 ...

  8. Go 语言快速开发入门(基础语法详解,第一节)

    Go 语言快速开发入门(基础语法详解,第一节) 一.基础语法详解,第一节 1.HelloWorld 1.1.代码编写和解释 1.2.go语言注意事项 2.Go 语言的转义字符&&Go ...

  9. 算法和数据结构(golang语言实现)

    算法和数据结构(golang语言实现) 第1节 选择.冒泡.插入.复杂度 选择排序 选择排序 时间复杂度为O(N^2) 额外空间复杂度O(1) 过程: arr[0-N-1]范围上,找到最小值所在的位置 ...

  10. 从零到一学习golang语言_初识go语言(一)

    从本篇文章起,从零到一学习go语言. 一.go和golang? 到底是go语言还是golang语言,其实官网已经表态过为go语言.官网的域名使用https://golang.org/,是因为go.or ...

最新文章

  1. 你甘心就这样过一辈子?
  2. mysql 关联关系
  3. Python OS模块使用汇总
  4. loadrunner脚本设计:事务函数的使用
  5. Ubuntu16.04下面壁纸切换软件variety设置
  6. jenkins 自带环境变量
  7. 文件服务器缓存加速,存储缓存为文件传输提速
  8. matlab学习笔记1
  9. QTP自动化测试最佳实践
  10. DenseNet代码实现
  11. c语言共有34种运算符,C语言运算符与表达式
  12. 云南高中信息技术测试软件,(整理)云南省高中信息技术学业水平考试各种操作....
  13. 音乐资源免费_3个免费的音乐研究在线资源
  14. python 滚动字幕_python – 在PyQt中滚动文本?
  15. Mac上启动、关闭、重启MySQL服务
  16. 十种能毁掉你一生职场生涯的心态
  17. ES更改默认分片数量及副本
  18. 疑难杂症篇(十六)--虚拟机出现“The system is running in low-graphics mode“问题的解决方案
  19. 计算机不能启动任务管理器,win10系统无法打开任务管理器怎么办
  20. PV操作经典例题——哲学家进餐问题

热门文章

  1. VC 使用msxml6.dll动态链接库中的函数读写XML文件
  2. xml 解析库 msxml6.dll
  3. {“errcode“:40125,“errmsg“:“invalid appsecret, view more at http:\/\/t.cn\/RAEkdVq rid: 60d999f2-3ad5
  4. 史上最详细的人脸识别和活体检测技术介绍、原理剖析及产品应用!
  5. usb口拒绝访问_电脑插上U盘显示无法访问 拒绝访问怎么回事
  6. DCDC和LDO原理和关键技术(学习笔记1-buck电路)
  7. 使用Photoshop去掉图片上的文字的几种方法
  8. 旧电脑改造服务器或云电脑和外网访问家庭nas/软路由实战记录
  9. 【CodeVS 1222】信与信封的问题 随机化+treat Hungery
  10. 去哪儿能找到那种直接翻译好的外文文献去阅读呢?