(一)Go---介绍,环境搭建(Windows,Linux)GoLand(IDE),VScode、以及go插件

一. 介绍

Go下载https://golang.google.cn/dl/
Visual Studio Code安装包https://code.visualstudio.com/Download
goLand下载地址https://www.jetbrains.com/go/?fromMenu

编程语言分类

  1. 编译型语言(执行速度快,编译速度慢),C,C++,Go
  2. 解释型语言(执行速度慢,编译速度快),Java,NET
  3. 动态脚本语言(执行速度慢,开发难度小),Python,PHP

Go编译语言---->易于开发,编译速度快,高效执行
官网github.com/golang

Python动态脚本语言

Go语言特性

Go 像Python一样简洁,向c++一样快(执行速度)
大道至简,小而运真

对于c# 有回收机制
对于java 代码简单
对于php速度更快
对于Python/Ruby 代码既简洁又快

官网github.com/golang

面向对象:使用类型,组合,接口来实现面向对象思想
反射CGO:用于调用C语言的模块
自动垃圾回收
静态编译
并发
交叉编译
易于部署
基于BSD协议,完全开放

使用场景:
服务端开发:日志处理,数据打包,虚拟机处理,文件系统,分布式,数据库代理等
网络编程:Web,API应用,下载
内存数据库
云平台
机器学习

二. 安装

下载地址
https://golang.org/dl/
https://golang.google.cn/dl/
在这里插入图片描述

1. windows安装

安装编译器

Go会自动化配置环境变量
GOROOT:go安装路径
GOPATH: go的工作空间,不能与GOROOT相同
(设置为用户变量,系统变量—看自己)
在这里插入图片描述

在PATH环境变量中加入
在这里插入图片描述
在GoPath中创建以下目录:工作目录
src是go的源文件主要
pkg是go的对象,也就是编译好的文件,以 .a结尾
bin可执行文件

在cmd中检查

查看变量
go env
查看版本
go version

1、**GO111MODULE**环境变量主要是用来开启或关闭模块支持的
它有三个可选值:off、on、auto,默认值是 auto。
GO111MODULE=off 无模块支持,go 会从 GOPATH 和 vendor 文件夹寻找包。
GO111MODULE=on 模块支持,go 会忽略 GOPATH 和 vendor 文件夹,只根据 go.mod 下载依赖。
GO111MODULE=auto 在 $GOPATH/src 外面且根目录有 go.mod 文件时,开启模块支持。
恢复GO111MODULE的默认值

go env -u GO111MODULE

新版本需要模块支持,也就是会忽略忽略 GOPATH 和 vendor 文件夹

这里需要:修改

go env -w GO111MODULE=on

2、配置代理:七牛
或 https://mirrors.aliyun.com/goproxy

go env  -w GOPROXY=https://goproxy.cn,direct

检查一下
go env
SET CGO_ENABLED=0 // 禁用CGO
SET GOOS=linux // 目标平台是linux
SET GOARCH=amd64 // 目标处理器架构是amd64
使用了cgo的代码是不支持跨平台编译的

然后再执行go build命令,得到的就是能够在Linux平台运行的可执行文件了。

Mac 下编译 Linux 和 Windows平台 64位 可执行程序:

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build
Linux 下编译 Mac 和 Windows 平台64位可执行程序:

CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build
Windows下编译Mac平台64位可执行程序:

SET CGO_ENABLED=0
SET GOOS=darwin
SET GOARCH=amd64

编写一个程序

在GOPATH中创建一个文件夹,在文件夹中创建一个.go结尾的文件
在这里插入图片描述

package main

import "fmt"

func main() {
    fmt.Println("Hello World")
}

运行cmd 方式

在这里插入图片描述

  1. go run直接执行该程序

  2. go build 会生成一个.exe结尾的可执行文件,也可以指定生成的文件名
    在这里插入图片描述

  3. go install,也可以,会直接可执行文件放到bin目录下面
    如果出现错误
    在这里插入图片描述

go env -w GO111MODULE=auto

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4. go install 也可以运行 文件-----会直接放到pkg目录下面,以.a结尾

2. linux安装

下载tar.gz包

配置环境变量
在这里插入图片描述

三. 集成环境GoLand开发环境IDE

下载地址:
最新
老版本
优点:不需要第三方插件
缺点:收费
激活:方法一

汉化需要重启GoLand
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

改配置

可变大小ctrl+鼠标,调整大小
在这里插入图片描述

在这里插入图片描述
去掉参数提示
在这里插入图片描述
在这里插入图片描述
打开已经写好的文件
在这里插入图片描述

四. Visual Studio Code安装—VScode

免费
优点:有第三方插件
安装包https://code.visualstudio.com/Download
System Installer版:安装在非用户目录,例如C盘根目录,任何帐户都可以使用。(建议使用此版本)
在这里插入图片描述

官网链接

https://az764295.vo.msecnd.net/stable/c185983a683d14c396952dd432459097bc7f757f/VSCodeUserSetup-x64-1.55.0.exe

我们看到前面的域名是az764295.vo.msecnd.net ,你只要将这个域名改为 vscode.cdn.azure.cn 就可以。
变成

https://vscode.cdn.azure.cn/stable/c185983a683d14c396952dd432459097bc7f757f/VSCodeUserSetup-x64-1.55.0.exe

配置系统变量----同上
在这里插入图片描述

然后运行go version

在这里插入图片描述
不过这种方法极不推荐,因为你不可能只有一个项目,我们每个项目都有自己的 GOPATH。习惯的做法是可以使用 go env 命令来设置

$ go env -w GOPATH=E:\VMP-Code\Golang

如果你已经在系统的环境变量中设置了 GOPATH ,那么一定移除掉,才能使用 go env -w 去设置,会报错

warning: go env -w GOPATH=... does not override conflicting OS environment variable

如果你移除了还报这个错误,那可能需要你重启电脑(反正我是这样)

在vsc菜单栏依次选择 文件–首选项–设置 ,然后 打开settings.json

全局–后面没有工作区
在这里插入图片描述
单独设置工作区的配置–也就是在一个项目下的变量值
在这里插入图片描述
设置完之后会出现
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

编辑器vscode的go插件安装

1 . 先下载windows版的git
找到工具

  1. Visual Studio Code====》vscode
    在github中找vscode-go
    安装依赖工具
    在这里插入图片描述
    在cmd中
go get -u -v github.com/nsf/gocode
go get -u -v github.com/uudashr/gopkgs/cmd/gopkgs
go get -u -v github.com/rogpeppe/godef
go get -u -v github.com/alecthomas/gometalinter
go get -u -v github.com/haya14busa/goplay/cmd/goplay
go get -u -v github.com/tylerb/gotype-live
go get -u -v github.com/davidrjenni/reftools/cmd/fillstruct
go get -u -v github.com/sourcegraph/go-langserver
go get -u -v github.com/fatih/gomodifytags
go get -u -v github.com/ramya-rao-a/go-outline
go get -u -v github.com/acroca/go-symbols
go get -u -v golang.org/x/tools/cmd/guru
go get -u -v golang.org/x/tools/cmd/gorename
go get -u -v golang.org/x/tools/cmd/godoc
go get -u -v github.com/zmb3/gogetdoc
go get -u -v golang.org/x/tools/cmd/goimports
go get -u -v github.com/golang/lint/golint
go get -u -v github.com/sqs/goreturns
go get -u -v github.com/josharian/impl
go get -u -v sourcegraph.com/sqs/goreturns
go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv
go get -u -v github.com/cweill/gotests/...
go get -u -v honnef.co/go/tools/...

在这里插入图片描述
需要将一下的东西解压到GOPATH目录中去
在这里插入图片描述
有些包需要手动解压缩到这儿
在这里插入图片描述
手动创建目录,右键目录,选择git here(前天装了git)
在命令行执行git clone 网址

Go插件安装失败的解决方法

%GOPATH%\src\目录下,创建golang.org文件夹;

然后在%GOPATH%\src\golang.org\目录下创建名称为x的文件夹;

打开cmd,cd进入%GOPATH%\src\golang.org\x目录;

输入git clone https://github.com/golang/tools.git tools -->回车,并等待下载完成;

完成后,%GOPATH%\src\golang.org\x目录下,会多出来一个tools的文件夹;

最后重新 go get上面第6步的go插件即可;

Code Runner

编写完代码后,想运行这个 go 文件,通常情况下你得通过下面 VSCODE 提供的入口去运行,是比较麻烦的。
在这里插入图片描述
点击 create a launch.json file 就会在项目根目录下创建一个 json 文件,创建完成后,运行的边栏就变成如下模样,再点击 那个三角运行按钮,就可以运行它了。
在这里插入图片描述
使用这种方法,需要安装一个 dlv,VS Code 会提示你安装它,安装完成后你会在 bin 目录下发现 dlv.exe
在这里插入图片描述
这种运行方法,虽然可行,但是操作路径还是有点长。

最符合用户使用习惯的应该是,直接有一个 运行 的按钮的,例如这样
在这里插入图片描述
或者通常快捷键,或者右键就有运行的选择项。
在这里插入图片描述
VS Code 本身不提供这样的功能,你需要安装一个叫 Code Runner 的扩展,安装后不需要重启 VS Code 就会失效
在这里插入图片描述
使用 Ctrl + Alt + N ,或者右键选择 Run Code 就可以执行该 go 文件。

五. 设置环境变量:GOPROXY

由于国内的一些网络问题,导致我们无法直接拉取 go 的一些工具包,这时候就要借助大神们搭建的代理地址来下载了。

最经常使用的是代理地址是:https://goproxy.cn

go env -w GOPROXY=https://goproxy.cn,direct

下载 Go 工具插件

创建目录 src/goland.org/x/,并进入此目录,执行命令

$ git clone https://github.com/golang/tools.git
$ git clone https://github.com/golang/lint.git

随便点开一个 go 文件,在你的右下角会提示要你安装一些工具,安装的包有些由于墙的原因,无法下载,为了保证下载顺利,可以设置一下代理。

$ go env -w GOPROXY=https://goproxy.cn,direct

然后再点击 Install All

然后你在 OUTPUT 就能看到安装进度
在这里插入图片描述

配置环境变量

set GO111MODULE=
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\wangbm\AppData\Local\go-build
set GOENV=C:\Users\wangbm\AppData\Roaming\go\env
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=E:\MING-Code\GoPlayer
set GOPRIVATE=
set GOPROXY=https://goproxy.cn,direct
set GOROOT=D:\Program Files (x86)\Go-1.13.6
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=D:\Program Files (x86)\Go-1.13.6\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

想查看几个特定的环境变量就加在 go env 后面

E:\MING-Code\GoPlayer
$ go env GOROOT
D:\Program Files (x86)\Go-1.13.6
$ go env GOPROXY
https://goproxy.cn,direct

以上环境变量很多,这里仅设置下面这两个就足够了

一个是GO111MODULE 设置为 on,表示使用 go modules 模式

$ go env -w GO111MODULE=on

一个是开启代理,防止下载包失败(前面可能你已经设置过)

$ go env -w GOPROXY=https://goproxy.cn,direct

五. 第一个程序helloworld

helloworld.go
在这里插入图片描述
package 必须在go源文件开头声明,代码所属包
import用于导入程序依赖的所有包
func用于定义函数,main函数是程序的入口,无返回值
fmt.PrintLn输出

package main
#import "fmt"
import (
	"fmt"
)
func main() {
	fmt.Println("hello world!!")
}

在cmd执行,注意在制定的问价夹下面
-x 打印编译过程
-work 保存编译过程
-o 输出结果

go build helloworld.go

go build -x -work -o hello.exe helloworld.go

go run 直接运行程序(编译+运行)

go clean 清楚编译文件

会在当前文件夹下面生成一个.exe的文件

dir

最后执行.exe文件

hello.exe

在这里插入图片描述

如何让修改语言

ctrl+shift+p

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值