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

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

 更新時間:2020年12月10日 15:34:48   投稿:mrr  
這是 2020 年第 3 個版本,也是最后一個版本,你還將發(fā)現(xiàn)許多新的代碼編輯功能,具體內(nèi)容詳情跟隨小編看看有哪些新特性

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

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

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

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

Go Remote configuration

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

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

02 測試增強(qiáng)

支持 table tests

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

有一些限制:

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

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

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

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

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

03 代碼檢查

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

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

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

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

04 代碼編輯

time 包的支持

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

我們增加了對 time 包的支持,因此您可以更輕松地使用 time 和 duration。GoLand 將通過代碼補全(⌃Space)建議使用 ISO-8601 中 YYYY,MM,DD 占位符的預(yù)定義 Layout。

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

更智能的包處理

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

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

支持變量 shadowing

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

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

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

類型參數(shù)中的方括號

我們跟蹤了 Go 小組對 泛型 [1] 的更新,并增加了對泛型語法方括號的支持。

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

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

05 其他改進(jìn)

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

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

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

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

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

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

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

07 其他

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

UI 改進(jìn);

VSC 更新;

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

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

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

08 總結(jié)

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

參考資料 [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)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Go設(shè)計模式之代理模式圖文詳解

    Go設(shè)計模式之代理模式圖文詳解

    這篇文章將通過圖文講解給大家詳細(xì)的介紹一下Go代理模式,代理模式是一種結(jié)構(gòu)型設(shè)計模式,代理控制著對于原對象的訪問, 并允許在將請求提交給對象前后進(jìn)行一些處理,感興趣的同學(xué)跟著小編一起來看看吧
    2023-07-07
  • golang容易導(dǎo)致內(nèi)存泄漏的6種情況匯總

    golang容易導(dǎo)致內(nèi)存泄漏的6種情況匯總

    內(nèi)存泄漏是我們在生產(chǎn)環(huán)境中必須面臨的問題,下面這篇文章主要給大家介紹了關(guān)于golang容易導(dǎo)致內(nèi)存泄漏的6種情況,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • go for range坑和閉包坑的分析

    go for range坑和閉包坑的分析

    今天小編就為大家分享一篇關(guān)于go for range坑和閉包坑的分析,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • Gin golang web開發(fā)模型綁定實現(xiàn)過程解析

    Gin golang web開發(fā)模型綁定實現(xiàn)過程解析

    這篇文章主要介紹了Gin golang web開發(fā)模型綁定實現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-10-10
  • Golang橋接模式講解和代碼示例

    Golang橋接模式講解和代碼示例

    橋接是一種結(jié)構(gòu)型設(shè)計模式,可將業(yè)務(wù)邏輯或一個大類拆分為不同的層次結(jié)構(gòu),從而能獨立地進(jìn)行開發(fā),本文將通過代碼示例詳細(xì)給大家介紹一下Golang橋接模式,需要的朋友可以參考下
    2023-06-06
  • go語言實現(xiàn)簡單http服務(wù)的方法

    go語言實現(xiàn)簡單http服務(wù)的方法

    這篇文章主要介紹了go語言實現(xiàn)簡單http服務(wù)的方法,涉及Go語言http操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-02-02
  • golang cobra使用chatgpt qdrant實現(xiàn)ai知識庫

    golang cobra使用chatgpt qdrant實現(xiàn)ai知識庫

    這篇文章主要為大家介紹了golang cobra使用chatgpt qdrant實現(xiàn)ai知識庫,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • Go常用標(biāo)準(zhǔn)庫之fmt的簡介與使用詳解

    Go常用標(biāo)準(zhǔn)庫之fmt的簡介與使用詳解

    fmt 是 Go 語言中的一個常用標(biāo)準(zhǔn)庫,它用于格式化輸入和輸出數(shù)據(jù),這篇文章主要為大家介紹了fmt的基本使用,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-10-10
  • 關(guān)于golang中死鎖的思考與學(xué)習(xí)

    關(guān)于golang中死鎖的思考與學(xué)習(xí)

    本文主要介紹了關(guān)于golang中死鎖的思考與學(xué)習(xí),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Go 數(shù)據(jù)結(jié)構(gòu)之堆排序示例詳解

    Go 數(shù)據(jù)結(jié)構(gòu)之堆排序示例詳解

    這篇文章主要為大家介紹了Go 數(shù)據(jù)結(jié)構(gòu)之堆排序示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08

最新評論