欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

go簡(jiǎn)介及國(guó)內(nèi)鏡像源配置全過程

 更新時(shí)間:2025年01月25日 16:14:44   作者:Freedom3568  
本文介紹了Go語言的基本概念和環(huán)境配置,包括GOROOT、GOPATH和GOMODULE的設(shè)置,還展示了如何在IDEA中配置Go語言的開發(fā)環(huán)境,并通過一個(gè)簡(jiǎn)單的“HelloWorld”項(xiàng)目來熟悉Go語言的基本語法和開發(fā)流程

一、Go 語言簡(jiǎn)介

Go 是一門編譯型和靜態(tài)的編程語言。因?yàn)?Go 語言是 2009 年誕生的,比目前市面上主流的編程語言,如 C、C++、Python、Java 都要新,所以它能夠基于多種語言,取其精華,去其糟粕。

Go 有很多特性:

  • 內(nèi)置并發(fā)編程支持:協(xié)程(goroutine)和通道(channel)
  • 內(nèi)置映射(map)和切片(slice)類型
  • 支持多態(tài)
  • 使用接口來實(shí)現(xiàn)裝箱(value boxing)和反射(reflection)
  • 支持指針、函數(shù)閉包、方法、延遲函數(shù)調(diào)用(defer)、類型內(nèi)嵌和推斷
  • 自動(dòng)化的內(nèi)存管理,即垃圾回收
  • 良好的代碼跨平臺(tái)性
  • 對(duì)于有一定編程經(jīng)驗(yàn)的程序員而言,上手 Go 會(huì)非常容易

二、環(huán)境配置

這里假設(shè)你已經(jīng)成功安裝了 golang,可以在命令行輸入 go version 查看已經(jīng)安裝的 golang 的版本信息。

1.GOROOT

在本地環(huán)境中添加 GOROOT 配置,值為 golang 安裝后的根目錄。

Windows 上默認(rèn)為 C:/go, Mac 電腦默認(rèn)為/usr/local/go

2.GOPATH

GOPATH 則設(shè)置為自己本地所有 Go 項(xiàng)目的根目錄。

設(shè)置完成后,在 GOPATH 目錄下創(chuàng)建三個(gè)文件夾 src、bin、pkg。

  • src 主要存放各個(gè)項(xiàng)目的源代碼,在 src 目錄下再創(chuàng)建一個(gè)名為 github.com 的文件夾,然后再根據(jù)各個(gè)項(xiàng)目名稱創(chuàng)建對(duì)應(yīng)的項(xiàng)目文件夾。
  • bin 保存的是各類可執(zhí)行文件,當(dāng)我們使用 go install 編譯項(xiàng)目源碼后,生成的項(xiàng)目可執(zhí)行文件就會(huì)保存到 bin 目錄中,此外 bin 目錄也保存下載的各種擴(kuò)展工具。
  • pkg 中,mod 文件夾下存放的是 go module 管理的依賴庫(kù)。

3.國(guó)內(nèi)鏡像設(shè)置

從 1.13 版本開始 Go 官方就推薦使用 go module 的方式進(jìn)行依賴管理,但是因?yàn)?ldquo;墻”的存在,導(dǎo)致有些外網(wǎng)的包可能無法下載或者下載速度會(huì)很慢,所以需要配置國(guó)內(nèi)的鏡像源

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

golang 的國(guó)內(nèi)鏡像源:

  • 阿里云:https://mirrors.aliyun.com/goproxy
  • 微軟:https://goproxy.io
  • 七牛云:https://goproxy.cn
  • GoCenter:https://gocenter.io

配置完成后可以使用命令 go env 查看配置是否正確。

三、開發(fā)工具介紹

開發(fā)工具有很多,如 VSCode、IDEA、GoLand。因?yàn)槲易约阂矔?huì) Java,而且也習(xí)慣了使用 IDEA,好在 IDEA 中也提供了 Go 語言的插件,以方便我們?cè)?IDEA 中從事 Go 語言開發(fā)和學(xué)習(xí)。所以我這里只展示如何在IDEA 上配置GO的開發(fā)環(huán)境。

在IDEA Plugins中搜索 Go 并下載

檢查GOROOT、GOPATH、GOMODULE 的設(shè)置

四、Hello World!

項(xiàng)目環(huán)境準(zhǔn)備

我這里創(chuàng)建了一個(gè)名叫 base-study 的項(xiàng)目,使用 go mod init baseStudy 來在項(xiàng)目根目錄下創(chuàng)建 go.mod 文件。

此時(shí)的 go.mod 文件只標(biāo)識(shí)了文件名和 go 的版本,屬于正常情況。

然后我在文件夾下創(chuàng)建第一個(gè) go 源文件:hello_world.go,老規(guī)矩了,學(xué)習(xí)一門語言,從說“Hello World!”開始。

package main

import "fmt"

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

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 如何利用Golang解析讀取Mysql備份文件

    如何利用Golang解析讀取Mysql備份文件

    這篇文章主要給大家介紹了關(guān)于如何利用Golang解析讀取Mysql備份文件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Golang具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • Go?跨域中間件解決CORS問題

    Go?跨域中間件解決CORS問題

    跨域問題CORS是前端開發(fā)人員經(jīng)常遇到的問題,本文主要介紹了Go?跨域中間件解決CORS問題,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-04-04
  • 一文帶你深入理解Golang中的泛型

    一文帶你深入理解Golang中的泛型

    Go?在泛型方面一直被詬病,因?yàn)樗谶@方面相對(duì)比較落后。但是,在?Go?1.18?版本中,泛型已經(jīng)被正式引入,成為了?Go?語言中一個(gè)重要的特性。本文將會(huì)詳細(xì)介紹?Go?泛型的相關(guān)概念,語法和用法,希望能夠幫助大家更好地理解和應(yīng)用這一特性
    2023-05-05
  • Go語言中Goroutine的設(shè)置方式

    Go語言中Goroutine的設(shè)置方式

    這篇文章介紹了Go語言中Goroutine的設(shè)置方式,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • Golang中使用Date進(jìn)行日期格式化(沿用Java風(fēng)格)

    Golang中使用Date進(jìn)行日期格式化(沿用Java風(fēng)格)

    這篇文章主要介紹了Golang中使用Date進(jìn)行日期格式化,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 這些關(guān)于Go中interface{}的注意事項(xiàng)你都了解嗎

    這些關(guān)于Go中interface{}的注意事項(xiàng)你都了解嗎

    這篇文章主要為大家詳細(xì)介紹了學(xué)習(xí)Go語言時(shí)需要了解的interface{}注意事項(xiàng),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下
    2023-03-03
  • Go打印結(jié)構(gòu)體提升代碼調(diào)試效率實(shí)例詳解

    Go打印結(jié)構(gòu)體提升代碼調(diào)試效率實(shí)例詳解

    這篇文章主要介紹了Go打印結(jié)構(gòu)體提升代碼調(diào)試效率實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-02-02
  • 300行代碼實(shí)現(xiàn)go語言即時(shí)通訊聊天室

    300行代碼實(shí)現(xiàn)go語言即時(shí)通訊聊天室

    本文主要介紹了300行代碼實(shí)現(xiàn)go語言即時(shí)通訊聊天室,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • Golang利用channel協(xié)調(diào)協(xié)程的方法詳解

    Golang利用channel協(xié)調(diào)協(xié)程的方法詳解

    go?當(dāng)中的并發(fā)編程是通過goroutine來實(shí)現(xiàn)的,利用channel(管道)可以在協(xié)程之間傳遞數(shù)據(jù),所以本文就來講講Golang如何利用channel協(xié)調(diào)協(xié)程吧
    2023-05-05
  • golang讀取http的body時(shí)遇到的坑及解決

    golang讀取http的body時(shí)遇到的坑及解決

    這篇文章主要介紹了golang讀取http的body時(shí)遇到的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03

最新評(píng)論