1、诞生于2006年1月下午15点4分5秒
2、2009发布并正式开园
3、2012年第一个正式版本Go1.0发布
4、截止2019年10月8日,Go1.13.1
1、打开https://golang.org/dl/
2、下载对应操作系统
3、安装
1、windows双击安装
2、linux编译安装
mkdir -p /var/opt/wwwroot/goblog 配置环境变量 vim /etc/profile export GOROOT=/usr/local/go export GOBIN=$GOROOT/bin export PATH=$PATH:$GOBIN export GOPATH=/var/opt/wwwroot/goblin source /etc/profile 安装结束,验证 go version go调试 dlv debug --headless --listen=:8030 --api-version=2
1、下载
https://git-scm.com/downloads
2、安装
window双击安装
linux
$ yum install git $ yum install git-svn git-email gitk
1、安装过程不再重复(详见pycharm安装)直接上验证
注意:配置环境变量
// 属于那个包,package包名和函数对应一一对应 package main // 导入包 import ( "fmt" ) func main() { // 打印fmt.Println fmt.Println("hello world") // 睡眠时间 // time.Sleep(time.Second*10) }
1、和python?一样,把相同功能的代码放到?一个?目录,称之为包
2、 包可以被其他包引?用
3、 main包是?用来?生成可执?行行?文件,每个程序只有?一个main包
4、 包的主要?用途是提?高代码的可复?用性
1、基本命令
a. go run 快速执?行行go?文件,就像执?行行脚本?一样
b. go build 编译程序,?生成?二进制可执?行行?文件
c. go install 安装可执?行行?文件到bin?目录
2、 基本命令
a. go test 执?行行单元测试或压?力力测试
b. go env 显示go相关的环境变量量
c. go fmt 格式化源代码
3、 Go程序结构
b. ?一个可执?行行程序只有?一个main包和?一个main函数
c. main函数是程序的执?行行?入?口
a. go源码按package进?行行组织,并且package要放到?非注释的第?一?行行
4、注释
b. 多?行行注释 /* */
a. 单?行行注释 //
1、 垃圾回收
a. 内存?自动回收,再也不不需要开发?人员管理理内存
b. 开发?人员专注业务实现,降低了了?心智负担
c. 只需要new分配内存,不不需要释放
2、天然并发
a. 从语?言层?面?支持并发,?非常简单。只需要go?一下
b. goroutine,轻量量级线程,创建成千上万个goroute成为可能
func calc() { //?大量量计算? } func main() { go calc()? }
3、channel
a. 管道,类似unix/linux中的pipe
b. 多个goroute之间通过channel进?行行通信
c. ?支持任何类型
4、 多返回值
a. ?一个函数返回多个值
5、 编译型语?言
原文:https://www.cnblogs.com/wangshuyang/p/11637406.html