go开发包下载,IDE工具下载,基础配置命令

go语言介绍

# 1 诞生于 2009年,10年的时间,非常新的语言,天然支持并发,很新,生态不完善
	-python:1989年
  -java:1990年
  -2005年,之前的语言,对并发支持不是特别好
# 2 轮子少(生态),django,flask     beego(中国人写的,orm都有),gin(集成gorm),两三个连mysql的模块
# 3 google出的  python,java:sun公司,甲骨文收购了  c#:微软

#4 Go是静态   强类型语言,是区别于解析型语言的编译型语言。
	-编译后执行---》编译成可执行文件   (java编译成字节码--运行在jvm上,每台机器都要跑一个jvm,300m内存)
  -解释型:直接运行在解释器上,php,js,python
  -夸平台性如何?java:一处编码,处处运行,go:夸平台编译(交叉编译),可以在windows平台编译出linux下的可执行文件
  -在linux上装过python,源码包下载,解压,make && make install  gcc编译的,当前平台的可以执行文件
  -go写的程序,只需要跨平台编译完,拿到不通平台上,不需要安装任何依赖
  
  -强类型:go,python是强类型,不允许不同类型运算  'aa'+1  报错
  -弱类型:允许不通类型运算
  
# 5 跨平台的编译型语言

# 6 有垃圾回收的机制(gc) python--》gil

# 7 支持面向对象和面向过程的编程模式(go不是一个纯粹的面向对象语言,面向对象的特性它都有:继承,封装,多态)

# 8 2009年推出   12年稳点版本  1.5——实现的架构变化,同时保留了和旧版本的兼容性,以后的go,完全实现了go自己写的
2020年 1.14版本   ---》规划:go 2.0以后,会有大更新:支持泛型,异常处理。。。

# 9 Go语言应用:google,基本上所有互联网都会有go,不是在用go,就是在转go的路上
# 10 go语言为什么笔记火:docker火,谷歌(k8s),区块链(第一款开源的区块链项目,用go写的),国内互联网公司爱用,性能高,语法简介,上手快,go特别适合服务端开发(微服务的开发)

# Go语言发展前景:统治下一个十年

go开发包下载

安装包下载地址为:https://golang.org/dl/。

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

命令介绍

直接在终端中输入 go help 即可显示所有的 go 命令以及相应命令功能简介,主要有下面这些:

build: 编译包和依赖
clean: 移除对象文件
doc: 显示包或者符号的文档
env: 打印go的环境信息
bug: 启动错误报告
fix: 运行go tool fix
fmt: 运行gofmt进行格式化
generate: 从processing source生成go文件
get: 下载并安装包和依赖
install: 编译并安装包和依赖
list: 列出包
run: 编译并运行go程序
test: 运行测试
tool: 运行go提供的工具
version: 显示go的版本
vet: 运行go tool vet

配置

go env会产生以下信息:

GO111MODULE= # 没有值或者off,表示没有开启go mode模式,用的就是gopath模式
GOROOT=c:\go  # go开发包的安装路径,确认好是否对
GOPATH=C:\Users\Jeff\go # 代码存放路径,确认好是否对,以后你的go代码都放在这个文件夹下
    
# go mode模式:代码可以放在任意路径
set GO111MODULE=
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\Jeff\AppData\Local\go-build
set GOENV=C:\Users\Jeff\AppData\Roaming\go\env
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\Jeff\go
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=c:\go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=c:\go\pkg\tool\windows_amd64
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config

修改配置

windows:
set GOPATH=E:\go           # 改了之后,代码必须放在E:\go\src下面
go env -w GO111MODULE=on

mac和linux:
export GO111MODULE=on
go env -w GO111MODULE=on

golandIDE工具下载

IDE 下载地址:http://www.jetbrains.com/go/?fromMenu

GOPROXY=https://goproxy.io,direct

golandIDE工具彻底卸载

cd ~/Library/Application\ Support/,查找Goland目录 GoLand2021.2,删除goland相关文件
cd ~/Library/Application\ Support/JetBrains,查找Goland目录 GoLand2021.2,删除goland相关文件
cd ~/Library/Preferences,删除goland相关文件
cd ~/Library/Logs/JetBrains/,删除goland相关文件

编译并执行命令

package main   //表示声明main包,每一个go代码的第一行必须写这个

import "fmt"

func main(){
	fmt.Println("hellword")
	fmt.Println("hello  word")
}

// 程序的执行入口,是main包下的main函数
//一个go项目只能有一个main函数

交叉编译命令

# go命令
go build   hello.go   # 编译成.exe的文件
go run hello.go   # 编译并执行,会产生一个.exe的执行文件。
env GOOS=linux GOARCH=amd64 go build # linux交叉编译

env GOOS=windows GOARCH=amd64 go build . #windows 交叉编译

# 在golang中执行
 右键,选择,run

go get "github.com/gin-gonic/gin"  //指定下载
go mod tidy  //自动监测,查漏补缺
go mod vendor 的功能是将新增的依赖包自动写入当前项目的 vendor 目录。
go get github.com/go-redis/redis@master  //@master获取最后一个版本
posted @ 2020-04-20 16:55  Jeff的技术栈  阅读(561)  评论(0编辑  收藏  举报
回顶部