go簡介及國內鏡像源配置全過程
一、Go 語言簡介
Go 是一門編譯型和靜態(tài)的編程語言。因為 Go 語言是 2009 年誕生的,比目前市面上主流的編程語言,如 C、C++、Python、Java 都要新,所以它能夠基于多種語言,取其精華,去其糟粕。
Go 有很多特性:
- 內置并發(fā)編程支持:協程(goroutine)和通道(channel)
- 內置映射(map)和切片(slice)類型
- 支持多態(tài)
- 使用接口來實現裝箱(value boxing)和反射(reflection)
- 支持指針、函數閉包、方法、延遲函數調用(defer)、類型內嵌和推斷
- 自動化的內存管理,即垃圾回收
- 良好的代碼跨平臺性
- 對于有一定編程經驗的程序員而言,上手 Go 會非常容易
二、環(huán)境配置
這里假設你已經成功安裝了 golang,可以在命令行輸入 go version 查看已經安裝的 golang 的版本信息。
1.GOROOT
在本地環(huán)境中添加 GOROOT 配置,值為 golang 安裝后的根目錄。
Windows 上默認為 C:/go, Mac 電腦默認為/usr/local/go

2.GOPATH
GOPATH 則設置為自己本地所有 Go 項目的根目錄。
設置完成后,在 GOPATH 目錄下創(chuàng)建三個文件夾 src、bin、pkg。
- src 主要存放各個項目的源代碼,在 src 目錄下再創(chuàng)建一個名為 github.com 的文件夾,然后再根據各個項目名稱創(chuàng)建對應的項目文件夾。
- bin 保存的是各類可執(zhí)行文件,當我們使用 go install 編譯項目源碼后,生成的項目可執(zhí)行文件就會保存到 bin 目錄中,此外 bin 目錄也保存下載的各種擴展工具。
- pkg 中,mod 文件夾下存放的是 go module 管理的依賴庫。
3.國內鏡像設置
從 1.13 版本開始 Go 官方就推薦使用 go module 的方式進行依賴管理,但是因為“墻”的存在,導致有些外網的包可能無法下載或者下載速度會很慢,所以需要配置國內的鏡像源
go env -w GO111MODULE=on go env -w GOPROXY=https://goproxy.cn,direct
golang 的國內鏡像源:
- 阿里云:https://mirrors.aliyun.com/goproxy
- 微軟:https://goproxy.io
- 七牛云:https://goproxy.cn
- GoCenter:https://gocenter.io
配置完成后可以使用命令 go env 查看配置是否正確。
三、開發(fā)工具介紹
開發(fā)工具有很多,如 VSCode、IDEA、GoLand。因為我自己也會 Java,而且也習慣了使用 IDEA,好在 IDEA 中也提供了 Go 語言的插件,以方便我們在 IDEA 中從事 Go 語言開發(fā)和學習。所以我這里只展示如何在IDEA 上配置GO的開發(fā)環(huán)境。
在IDEA Plugins中搜索 Go 并下載

檢查GOROOT、GOPATH、GOMODULE 的設置

四、Hello World!
項目環(huán)境準備
我這里創(chuàng)建了一個名叫 base-study 的項目,使用 go mod init baseStudy 來在項目根目錄下創(chuàng)建 go.mod 文件。

此時的 go.mod 文件只標識了文件名和 go 的版本,屬于正常情況。

然后我在文件夾下創(chuàng)建第一個 go 源文件:hello_world.go,老規(guī)矩了,學習一門語言,從說“Hello World!”開始。
package main
import "fmt"
func main() {
fmt.Println("Hello World!")
}總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Golang中使用Date進行日期格式化(沿用Java風格)
這篇文章主要介紹了Golang中使用Date進行日期格式化,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-04-04

