go入门 - day1 - 环境搭建

0. 介绍

  1. go语言可以做什么?
    a. 区块链
    b. 分布式/微服务/云原生
    c. 服务器/游戏软件
  2. go的优势
    a. 代码量比C++和Java少
    b. 编译速度比Java或者C++快上5到6倍,比Scale块10被
    c. 性能比C++慢20%,但是比Java、python等快上5到10倍
    d. 内存管理和C++媲美,是Java的1/5左右
    e. 唯一的缺点就是go语言的文件体积比较大,因为每一个文件都包含了runtime

1. 安装

  1. windows直接下载,然后傻瓜式的安装。下载地址: https://studygolang.com/dl

2. 环境变量设置

  1. 设置系统环境变量,设置GOPATHGOROOT两个系统环境变量。

    • GOPATH: go的安装路径
    • GOROOT:go的依赖包($GOPATH/pkg),项目发布的包($GOPATH/bin),缓存($GOPATH/cache)所在的路径
  2. 相关命令:

    (1) 设置环境变量go env -w。或者直接在系统环境变量中设置就行了

    (2) 查看环境变量 go env ,如果发现上面的路径不是自己想要的,可以通过go env -w设置,这个其实就是在
    C:\Users\curUser\AppData\Roaming\go这个路径下创建一个env文件,里面会写上环境变量

  3. 一些重要的路径配置

shell 复制代码
set GOROOT=F:\software\go  # go的安装目录
set GOPATH=F:\\data\\go	   # go的依赖目录,在1.16之后,已经由module管理了,类似于maven仓库
set GOPROXY=https://proxy.golang.org,direct 			# 下载依赖的代理,类似于maven的镜像
set GOCACHE=C:\Users\Zekun Fu\AppData\Local\go-build    # go缓存的路径
set GOMODCACHE=F:\\data\\go\\pkg\\mod			        # go模块的缓存路径,一般在$GOPATH下创建的文件夹

3. IDE配置

如果使用vscode进行搭建的,看下面的文章就行了

  1. vscode搭建环境教程:https://learn.microsoft.com/zh-cn/azure/developer/go/configure-visual-studio-code,主要两步
    (1)安装go插件

(2)ctrl + shift + P->输入go tool->选择全部->安装go调试工具 ,网速不好,可能需要开代理

  1. idea配置也比较简单,主要是两步
    (1)安装go插件

(2)配置项目的GOPATHGOROOTGOPROXY等信息,另外重点是将下面的内容选上,也就是启动11的模块化管理,这样项目就不用定死在$GOPATH/src目录下,可以放在任意位置,只要有go.mod就可以进行项目的生命周期管理了

4. hello world

  1. go mod init demo
  2. 创建文件 hello.go
  3. 编写代码
go 复制代码
package main

import "fmt"

func main() {
	fmt.Println("Hello, world!")
}
  1. 运行 go run hello.go
相关推荐
jerryinwuhan5 小时前
基于各城市站点流量的复合功能比较
开发语言·php
candyTong5 小时前
Claude Code Agent Teams:多 Agent 协作的生命周期与实现机制
后端·架构
迈巴赫车主6 小时前
Java基础:list、set、map一遍过
java·开发语言
南 阳7 小时前
Python从入门到精通day66
开发语言·python
十八旬8 小时前
快速安装ClaudeCode完整指南
开发语言·windows·python·claude
前进的李工9 小时前
EXPLAIN输出格式全解析:JSON、TREE与可视化
开发语言·数据库·mysql·性能优化·explain
Byron Loong9 小时前
【c++】为什么有了dll和.h,还需要包含lib
java·开发语言·c++
独隅9 小时前
CodeX + Visual Studio Code 联动的全面指南
开发语言·php
坚果派·白晓明9 小时前
【鸿蒙PC三方库移植适配框架解读系列】第一篇:Lycium C/C++ 三方库适配 — 概述与环境配置
c语言·开发语言·c++·harmonyos·开源鸿蒙·三方库·c/c++三方库
爱吃小白兔的猫10 小时前
LPA算法详解:一种近线性时间的图社区发现方法
开发语言·php