濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > GoLand 2020.3 正式發(fā)布有不少新功能(支持泛型)

GoLand 2020.3 正式發(fā)布有不少新功能(支持泛型)

熱門(mén)標(biāo)簽:貴州電話智能外呼系統(tǒng) 官渡電銷(xiāo)外呼管理系統(tǒng)怎么收費(fèi) 杭州人工智能電銷(xiāo)機(jī)器人費(fèi)用 谷歌美發(fā)店地圖標(biāo)注 利用地圖標(biāo)注位置 地圖區(qū)域圖標(biāo)注后導(dǎo)出 400開(kāi)頭電話怎樣申請(qǐng) 江蘇呼叫中心外呼系統(tǒng)有效果嗎 赤峰電銷(xiāo)

這是 2020 年第 3 個(gè)版本,也是最后一個(gè)版本。在 GoLand 2020.3 中,您可以探索 goroutines dumps,運(yùn)行并導(dǎo)航到單個(gè)表測(cè)試(table tests),并從對(duì) Testify 測(cè)試框架的擴(kuò)展支持中獲得更多信息。你還將發(fā)現(xiàn)許多新的代碼編輯功能,包括對(duì) time 包的支持,更智能的處理包方法,UI 改進(jìn),用于 Web 開(kāi)發(fā)和使用數(shù)據(jù)庫(kù)的各種新功能以及用于協(xié)作開(kāi)發(fā)和結(jié)對(duì)編程的新服務(wù)。具體看看有哪些新特性。

01 調(diào)試器改進(jìn) Dump Goroutines

調(diào)試器中新的轉(zhuǎn)儲(chǔ) Goroutines(Dump Goroutines) 圖標(biāo)使您可以在調(diào)試會(huì)話期間輕松地在堆棧中查找包含指定字符串的 goroutine。只需單擊該圖標(biāo)即可在單獨(dú)的窗口中打開(kāi)轉(zhuǎn)儲(chǔ)。

為了幫助您始終關(guān)注重要信息,可以選擇隱藏單個(gè)goroutine或具有相同堆棧的goroutine。右鍵單擊goroutine,然后選擇所需的操作,或按Delete鍵將其移至轉(zhuǎn)儲(chǔ)窗口中的特殊“隱藏”部分,這樣不會(huì)分散您的注意力。

Go Remote configuration

如果不需要重新連接,GoLand 2020.3可以通過(guò) Go Remote 配置停止進(jìn)程。

在配置設(shè)置中,您可以指定斷開(kāi)連接時(shí)調(diào)試器的默認(rèn)行為,可以選擇 “Stop remote Delve processes”,“使其保持運(yùn)行狀態(tài)”或讓 GoLand 每次詢問(wèn)您如何繼續(xù)。

02 測(cè)試增強(qiáng)

支持 table tests

您可以從 “Run” 工具窗口運(yùn)行并導(dǎo)航到表測(cè)試。

有一些限制:

  • 測(cè)試數(shù)據(jù)變量必須是切片,數(shù)組或 map。它必須在與調(diào)用相同的函數(shù)中定義,并且在初始化后不得修改(for 循環(huán)中的 range 子句除外)。
  • 各個(gè)測(cè)試數(shù)據(jù)條目必須是結(jié)構(gòu)體字面值。調(diào)用前不得使用子測(cè)試名稱(chēng)表達(dá)式中使用的循環(huán)變量。
  • 子測(cè)試名稱(chēng)表達(dá)式可以是測(cè)試數(shù)據(jù)中的字符串字段,測(cè)試數(shù)據(jù)字符串字段的連接以及帶有 %s 和 %d 動(dòng)詞的fmt.Sprintf() 調(diào)用。

擴(kuò)展了對(duì) Testify 的支持

現(xiàn)在,IDE 可以識(shí)別啟動(dòng)測(cè)試套件的測(cè)試功能,并提供一種啟動(dòng)單個(gè) suite.Run 和 suite.T().Run,只要子測(cè)試名稱(chēng)是字符串常量即可。另外,可以從“Run”工具窗口重新運(yùn)行子測(cè)試,以避免重新運(yùn)行整個(gè)頂級(jí)測(cè)試。

此外,GoLand 現(xiàn)在可以在一個(gè)測(cè)試用例中使用相同的方法名稱(chēng)分別運(yùn)行 Testify 套件。

最后但并非最不重要的一點(diǎn)是,當(dāng)您準(zhǔn)備寫(xiě)測(cè)試函數(shù)時(shí)(testing.T 作為第一個(gè)參數(shù)),GoLand 會(huì)在可能的情況下自動(dòng)傳遞該參數(shù)。這適用于 testify/assert,testify/require,testify/mock 和 testify/suite 包。

03 代碼檢查

不正確使用類(lèi)似 Println/Printf 的函數(shù),GoLand 會(huì)有警告,之前只對(duì)標(biāo)準(zhǔn)庫(kù)起作用,現(xiàn)在支持 github.com/pkg/errors, github.com/sirupsen/logrus 和 go.uber.org/zap 包。

最重要的是,我們添加了占位符突出顯示和折疊,以及添加格式字符串參數(shù)的意圖。

context.CancelFunc(不稱(chēng)為代碼檢查)報(bào)告了 context 取消的潛在不安全使用。當(dāng) context 返回的 “cancel” 函數(shù)未在所有執(zhí)行路徑上調(diào)用時(shí),此功能特別有用。

更多細(xì)節(jié)可以查看標(biāo)準(zhǔn)庫(kù)文檔:https://docs.studygolang.com/pkg/context。

04 代碼編輯

time 包的支持

Go 語(yǔ)言中文網(wǎng)注:Go 中的時(shí)間格式化和其他語(yǔ)言不一樣,其他語(yǔ)言都是使用 YYYY、MM、dd 等,而 Go 使用魔法數(shù)字:2006-01-02 15:04:05 這樣的固定時(shí)間。有些人可能記不住或習(xí)慣其他語(yǔ)言的格式。GoLand 2020.3 做了這樣的轉(zhuǎn)換,見(jiàn)下圖。

我們?cè)黾恿藢?duì) time 包的支持,因此您可以更輕松地使用 time 和 duration。GoLand 將通過(guò)代碼補(bǔ)全(⌃Space)建議使用 ISO-8601 中 YYYY,MM,DD 占位符的預(yù)定義 Layout。

在某個(gè) token 上按 ⌘P,IDE 將顯示其含義。Layout 標(biāo)記也有語(yǔ)法突出顯示。代碼完成還建議在字符串文字之外的標(biāo)準(zhǔn)時(shí)間 Layout。

更智能的包處理

現(xiàn)在,IDE 可以更聰明地為您經(jīng)常使用的包的提示項(xiàng)配置優(yōu)先級(jí),這些包是在項(xiàng)目的 go.mod 文件中明確聲明的。

我們還添加了一個(gè)選項(xiàng),可將包從項(xiàng)目導(dǎo)入路徑和完成建議中完全排除。您可以通過(guò) Alt + Enter 或在排除窗口中執(zhí)行此操作。

支持變量 shadowing

GoLang 可以更輕松地發(fā)現(xiàn)變量 shadowing。

IDE 顯示的變量現(xiàn)在可以用不同的顏色區(qū)分 shadowing 變量。

導(dǎo)航到 shadowing 聲明意圖操作,使您可以立即切換到 shadowing 聲明。

類(lèi)型參數(shù)中的方括號(hào)

我們跟蹤了 Go 小組對(duì) 泛型 [1] 的更新,并增加了對(duì)泛型語(yǔ)法方括號(hào)的支持。

請(qǐng)注意,Settings | Go 中的 “ Enable generics (experimental support for type parameters) ” 默認(rèn)情況下處于關(guān)閉狀態(tài)。您需要明確選擇該復(fù)選框才能開(kāi)始使用該功能。

更多關(guān)于該功能的信息可以 查看該文章 [2] 。

05 其他改進(jìn)

在測(cè)試文件中鍵入 func 時(shí),默認(rèn)情況下,GoLand 會(huì)提示出 bench 和 test 函數(shù)模板。

當(dāng)您在基準(zhǔn)測(cè)試中輸入 for 時(shí),IDE 建議使用 b.N 的 for 循環(huán)來(lái)完成它。

改進(jìn)了拼寫(xiě)和語(yǔ)法檢查器

現(xiàn)在,當(dāng)您按 Alt + Enter 時(shí),建議會(huì)立即顯示在對(duì)話框中。此外,新版本的 LanguageTool 語(yǔ)法檢查引擎還改進(jìn)了英語(yǔ)檢查功能,并增加了對(duì) 10 種其他語(yǔ)言的支持。

06 和我編碼(結(jié)對(duì)編程)

GoLand 2020.3 支持 Code With Me(EAP),這是 JetBrains 的一項(xiàng)新服務(wù),用于協(xié)作開(kāi)發(fā)和結(jié)對(duì)編程。與我一起編寫(xiě)代碼使您可以與他人共享您當(dāng)前在 IDE中 打開(kāi)的項(xiàng)目,并實(shí)時(shí)進(jìn)行協(xié)作。

關(guān)于該功能的更多信息請(qǐng)查看 這篇文章 [3] 。

07 其他

其他的改進(jìn)有:

UI 改進(jìn);

VSC 更新;

Web 開(kāi)發(fā)增強(qiáng);

對(duì)數(shù)據(jù)庫(kù)支持增強(qiáng);

關(guān)于這塊的詳細(xì)信息可以到 這里查看 [4] 。

08 總結(jié)

GoLand 是一個(gè)收費(fèi)軟件,可以試用 30 天。如果覺(jué)得不錯(cuò),歡迎支持!當(dāng)然免費(fèi)的 VSCode 也香,對(duì)吧!

參考資料 [1]

泛型: https://groups.google.com/g/golang-nuts/c/iAD0NBz3DYw?pli=1

[2]

查看該文章: https://blog.jetbrains.com/go/2020/11/24/experimenting-with-go-type-parameters-generics-in-goland/

[3]

這篇文章: https://blog.jetbrains.com/tag/codewithme/

[4]

這里查看: https://www.jetbrains.com/go/promo/whatsnew/

到此這篇關(guān)于GoLand 2020.3 正式發(fā)布有不少新功能(支持泛型)的文章就介紹到這了,更多相關(guān)GoLand 2020.3支持泛型內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Goland支持泛型了(上機(jī)實(shí)操)
  • C++算法與泛型算法(algorithm、numeric)
  • Golang 使用接口實(shí)現(xiàn)泛型的方法示例
  • Go 泛型和非泛型代碼詳解

標(biāo)簽:黔西 鷹潭 宜春 河池 保定 泰安 武漢 松原

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《GoLand 2020.3 正式發(fā)布有不少新功能(支持泛型)》,本文關(guān)鍵詞  GoLand,2020.3,正式,發(fā)布,有,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《GoLand 2020.3 正式發(fā)布有不少新功能(支持泛型)》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于GoLand 2020.3 正式發(fā)布有不少新功能(支持泛型)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    曲沃县| 普兰县| 高清| 龙山县| 手游| 奎屯市| 忻城县| 象州县| 潍坊市| 疏勒县| 潜山县| 岢岚县| 会泽县| 绥滨县| 都江堰市| 九龙坡区| 洪泽县| 平昌县| 西乌珠穆沁旗| 图片| 桐柏县| 青龙| 吕梁市| 鄱阳县| 上栗县| 扶风县| 陵川县| 湖州市| 阜城县| 福建省| 阿城市| 平度市| 嘉定区| 白城市| 临夏市| 曲沃县| 南江县| 七台河市| 林西县| 沭阳县| 广州市|