老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)

構(gòu)建go語言 go語言構(gòu)造函數(shù)

如何學(xué)習GO語言?

Go語言也稱 Golang,兼具效率、性能、安全、健壯等特性。這套Go語言教程(Golang教程)通俗易懂,深入淺出,既適合沒有基礎(chǔ)的讀者快速入門,也適合工作多年的程序員查閱知識點。

創(chuàng)新互聯(lián)提供高防主機、云服務(wù)器、香港服務(wù)器、重慶服務(wù)器托管

Go 語言

這套教程在講解一些知識點時,將 Go 語言和其他多種語言進行對比,讓掌握其它編程語言的讀者能迅速理解 Go 語言的特性。Go語言從底層原生支持并發(fā),無須第三方庫、開發(fā)者的編程技巧和開發(fā)經(jīng)驗就可以輕松搞定。

Go語言(或 Golang)起源于 2007 年,并在 2009 年正式對外發(fā)布。Go 是非常年輕的一門語言,它的主要目標是“兼具 Python 等動態(tài)語言的開發(fā)速度和 C/C++ 等編譯型語言的性能與安全性”。

Go語言是編程語言設(shè)計的又一次嘗試,是對類C語言的重大改進,它不但能讓你訪問底層操作系統(tǒng),還提供了強大的網(wǎng)絡(luò)編程和并發(fā)編程支持。Go語言的用途眾多,可以進行網(wǎng)絡(luò)編程、系統(tǒng)編程、并發(fā)編程、分布式編程。

Go語言的推出,旨在不損失應(yīng)用程序性能的情況下降低代碼的復(fù)雜性,具有“部署簡單、并發(fā)性好、語言設(shè)計良好、執(zhí)行性能好”等優(yōu)勢,目前國內(nèi)諸多 IT 公司均已采用Go語言開發(fā)項目。Go語言有時候被描述為“C 類似語言”,或者是“21 世紀的C語言”。Go 從C語言繼承了相似的表達式語法、控制流結(jié)構(gòu)、基礎(chǔ)數(shù)據(jù)類型、調(diào)用參數(shù)傳值、指針等很多思想,還有C語言一直所看中的編譯后機器碼的運行效率以及和現(xiàn)有操作系統(tǒng)的無縫適配。

因為Go語言沒有類和繼承的概念,所以它和 Java 或 C++ 看起來并不相同。但是它通過接口(interface)的概念來實現(xiàn)多態(tài)性。Go語言有一個清晰易懂的輕量級類型系統(tǒng),在類型之間也沒有層級之說。因此可以說Go語言是一門混合型的語言。

此外,很多重要的開源項目都是使用Go語言開發(fā)的,其中包括 Docker、Go-Ethereum、Thrraform 和 Kubernetes。Go 是編譯型語言,Go 使用編譯器來編譯代碼。編譯器將源代碼編譯成二進制(或字節(jié)碼)格式;在編譯代碼時,編譯器檢查錯誤、優(yōu)化性能并輸出可在不同平臺上運行的二進制文件。要創(chuàng)建并運行 Go 程序,程序員必須執(zhí)行如下步驟。

使用文本編輯器創(chuàng)建 Go 程序;

保存文件;編譯程序;運行編譯得到的可執(zhí)行文件。

這不同于 Python、Ruby 和 JavaScript 等語言,它們不包含編譯步驟。Go 自帶了編譯器,因此無須單獨安裝編譯器。

鏈喬教育在線旗下學(xué)碩創(chuàng)新區(qū)塊鏈技術(shù)工作站是中國教育部學(xué)校規(guī)劃建設(shè)發(fā)展中心開展的“智慧學(xué)習工場2020-學(xué)碩創(chuàng)新工作站 ”唯一獲準的“區(qū)塊鏈技術(shù)專業(yè)”試點工作站。專業(yè)站立足為學(xué)生提供多樣化成長路徑,推進專業(yè)學(xué)位研究生產(chǎn)學(xué)研結(jié)合培養(yǎng)模式改革,構(gòu)建應(yīng)用型、復(fù)合型人才培養(yǎng)體系。

GO語言(十一):開始使用多模塊工作區(qū)

本教程介紹 Go 中多模塊工作區(qū)的基礎(chǔ)知識。使用多模塊工作區(qū),您可以告訴 Go 命令您正在同時在多個模塊中編寫代碼,并輕松地在這些模塊中構(gòu)建和運行代碼。

在本教程中,您將在共享的多模塊工作區(qū)中創(chuàng)建兩個模塊,對這些模塊進行更改,并在構(gòu)建中查看這些更改的結(jié)果。

本教程需要 go1.18 或更高版本。使用go.dev/dl中的鏈接確保您已在 Go 1.18 或更高版本中安裝了 Go 。

首先,為您要編寫的代碼創(chuàng)建一個模塊。

1、打開命令提示符并切換到您的主目錄。

在 Linux 或 Mac 上:

在 Windows 上:

2、在命令提示符下,為您的代碼創(chuàng)建一個名為工作區(qū)的目錄。

3、初始化模塊

我們的示例將創(chuàng)建一個hello依賴于 golang.org/x/example 模塊的新模塊。

創(chuàng)建你好模塊:

使用 . 添加對 golang.org/x/example 模塊的依賴項go get。

在 hello 目錄下創(chuàng)建 hello.go,內(nèi)容如下:

現(xiàn)在,運行 hello 程序:

在這一步中,我們將創(chuàng)建一個go.work文件來指定模塊的工作區(qū)。

在workspace目錄中,運行:

該go work init命令告訴為包含目錄中模塊的工作空間go創(chuàng)建一個文件 。go.work./hello

該go命令生成一個go.work如下所示的文件:

該go.work文件的語法與go.mod相同。

該go指令告訴 Go 應(yīng)該使用哪個版本的 Go 來解釋文件。它類似于文件中的go指令go.mod 。

該use指令告訴 Go在進行構(gòu)建時hello目錄中的模塊應(yīng)該是主模塊。

所以在模塊的任何子目錄中workspace都會被激活。

2、運行工作區(qū)目錄下的程序

在workspace目錄中,運行:

Go 命令包括工作區(qū)中的所有模塊作為主模塊。這允許我們在模塊中引用一個包,即使在模塊之外。在模塊或工作區(qū)之外運行g(shù)o run命令會導(dǎo)致錯誤,因為該go命令不知道要使用哪些模塊。

接下來,我們將golang.org/x/example模塊的本地副本添加到工作區(qū)。然后,我們將向stringutil包中添加一個新函數(shù),我們可以使用它來代替Reverse.

在這一步中,我們將下載包含該模塊的 Git 存儲庫的副本golang.org/x/example,將其添加到工作區(qū),然后向其中添加一個我們將從 hello 程序中使用的新函數(shù)。

1、克隆存儲庫

在工作區(qū)目錄中,運行g(shù)it命令來克隆存儲庫:

2、將模塊添加到工作區(qū)

該go work use命令將一個新模塊添加到 go.work 文件中。它現(xiàn)在看起來像這樣:

該模塊現(xiàn)在包括example.com/hello模塊和 `golang.org/x/example 模塊。

這將允許我們使用我們將在模塊副本中編寫的新代碼,而不是使用命令stringutil下載的模塊緩存中的模塊版本。

3、添加新功能。

我們將向golang.org/x/example/stringutil包中添加一個新函數(shù)以將字符串大寫。

將新文件夾添加到workspace/example/stringutil包含以下內(nèi)容的目錄:

4、修改hello程序以使用該功能。

修改workspace/hello/hello.go的內(nèi)容以包含以下內(nèi)容:

從工作區(qū)目錄,運行

Go 命令在go.work文件指定的hello目錄中查找命令行中指定的example.com/hello模塊 ,同樣使用go.work文件解析導(dǎo)入golang.org/x/example。

go.work可以用來代替添加replace 指令以跨多個模塊工作。

由于這兩個模塊在同一個工作區(qū)中,因此很容易在一個模塊中進行更改并在另一個模塊中使用它。

現(xiàn)在,要正確發(fā)布這些模塊,我們需要發(fā)布golang.org/x/example 模塊,例如在v0.1.0. 這通常通過在模塊的版本控制存儲庫上標記提交來完成。發(fā)布完成后,我們可以增加對 golang.org/x/example模塊的要求hello/go.mod:

這樣,該go命令可以正確解析工作區(qū)之外的模塊。

Go 語言交叉編譯和構(gòu)建標簽

現(xiàn)代應(yīng)用支持多平臺運行是一件稀松平常的事情,在 Go 語言里面,為了支持應(yīng)用的多平臺部署,給用戶提供了方便的配置方式來輕松構(gòu)建針對不同操作系統(tǒng)和平臺的運行文件。

Go 的構(gòu)建約束,即構(gòu)建標簽,是以 // go:build 為開始的行注釋,如果是 1.16 或之前的版本,格式是 // +build 。跟此變更相關(guān)的 issue 可以參考 25348 。

構(gòu)建標簽必須出現(xiàn)在 package 子句之前。為了區(qū)分構(gòu)建標簽和包文檔的描述注釋,構(gòu)建標簽后面應(yīng)該有一個空行。

構(gòu)建標簽由||, , !運算符以及括號來組合表達。運算符與 Go 中的含義相同。

例如,以下構(gòu)建標簽在滿足 linux 和 386 約束,或者滿足 darwin 而 cgo 不滿足時構(gòu)建文件:

//go:build (linux 386) || (darwin !cgo)

又如:僅在使用 cgo 時,且僅在 Linux 和 OS X 上構(gòu)建文件: //go:build cgo (linux || darwin)

注意:1.17 及以后的表達格式里,一個文件有多個 //go:build 行是錯誤的。

在 1.16 及以前的版本,多行構(gòu)建標簽是允許的,并且組合方式是通過空格和逗號等來區(qū)分,空格符表示 OR,逗號表示 AND,感嘆號表示 NOT。而多行之間則表示 OR。gofmt 命令將在遇到舊語法時添加等效的 //go:build 約束。如下是示例:

如果文件名在去除擴展名和可能的 _test 后綴后匹配以下任何模式, (例如:source_windows_amd64.go)其中 GOOS 和 GOARCH 分別代表任何已知的操作系統(tǒng)和體系結(jié)構(gòu)值,那么認為該文件除了文件中的任何顯式約束之外,具有這些術(shù)語的所表達的隱式構(gòu)建標簽。

除了官方提供的針對不同平臺的內(nèi)置標簽,用戶也可以使用自定義標簽,例如 //go:build prod , 只需要在執(zhí)行 go build 時顯式帶上標簽名 go build --tags=prod 。

想要使文件構(gòu)建時被忽略,可以使用: //go:build ignore ,其他任何沒有被用來定義為標簽的詞也可以,但"ignore"是約定俗成的。)。Go 語言目前支持的系統(tǒng)和架構(gòu)可以參考 官方文檔 。


文章題目:構(gòu)建go語言 go語言構(gòu)造函數(shù)
文章位置:http://www.xueling.net.cn/article/hgpoeg.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 久久久久黑人强伦姧人妻 | 欧美精品久久凉森玲梦 | 欧美日韩在线视频免费观看 | 人与牲口性恔配视频免费 | 狠狠中文字幕 | 亚洲国产精品成人综合色 | 欧美日本高清在线不卡区 | 日韩免费精品视频 | 国产精品麻豆99久久久久久 | 毛片黄片免费看 | 草草影院网址 | 老司机精品视频免费观看 | 免费爱爱视频网站 | 国产极品粉嫩馒头一线天av | 97香蕉久久国产在线观看 | 亚洲国产一区二区三区精品 | 亚洲一区二区三区乱码在线欧洲 | 日韩欧美精品一区二区三区经典 | 午夜精品在线 | 国产成人福利在线观看 | 蜜桃视频一区二区三区在线观看 | 日韩三级国产 | 欧美国产偷国产精品三区 | 小14萝裸体洗澡视频免费网站 | 人摸人人人澡人人超碰手机版 | 18成禁人视频免费网站 | 中国久久久 | 欧美无人区码SUV | 久久不射热爱视频精品 | 国产激情视频网 | 久久免费看少妇高潮a片特黄网站 | 亚洲AV成人无码网站大全 | 青青青爽在线视频观看 | 日韩免费成人 | 国产无遮挡裸体免费视频A片 | 懂爱av | 成人免费看吃奶视频网站 | 亚洲精品成人AV在线观看爽翻 | 国产精品无码午夜福利 | 97国产精华最好的产品亚洲 | 欧美日韩亚洲色图 |