Go 1.18 Beta 1 可用,帶有泛型
Go 1.18 Beta 1 現(xiàn)已可用,這是 Go 1.18 的第一個預(yù)覽版;Go 1.18 的正式版發(fā)布還需要幾個月的時間。
感興趣的用戶可以訪問下載頁面獲取 Go 1.18 Beta 1。
Go 1.18 Beta 1 是第一個包含 Go 對使用參數(shù)化類型的泛型代碼的新支持的預(yù)覽版本。官方表示,泛型是自 Go 1 發(fā)布以來 Go 最重要的變化,也是他們所做過的最大的單一語言變化。
對于任何大型的新功能,新用戶發(fā)現(xiàn)新錯誤是很常見的,我們不希望泛型成為這個規(guī)則的例外;一定要以適當(dāng)?shù)闹?jǐn)慎態(tài)度對待它們。此外,某些微妙的情況,例如特定類型的遞歸泛型類型,已推遲到未來版本。也就是說,我們知道一些早期采用者已經(jīng)相當(dāng)滿意,如果你有你認(rèn)為特別適合泛型的用例,我們希望你能嘗試一下。我們發(fā)布了一個 關(guān)于如何開始使用泛型的簡短教程, 并在上周的 GopherCon 上做了一個演講。你甚至可以在 Go playground 的 Go dev 分支模式下試用 。
此外,Go 1.18 Beta 1 還包含:
- 添加了對編寫基于模糊測試的內(nèi)置支持 ,以自動查找導(dǎo)致程序崩潰或返回?zé)o效答案的輸入。
- 添加了一個新的“Go workspace mode”,它允許用戶同時使用多個 Go 模塊,這對大型項(xiàng)目來說是一個重要的用例。
- 包含一個擴(kuò)展go version -m命令,它現(xiàn)在可以記錄 compiler flags 等構(gòu)建細(xì)節(jié) 。程序可以使用 debug.ReadBuildInfo 查詢自己的構(gòu)建細(xì)節(jié) ,現(xiàn)在可以使用新的 debug/buildinfo 包從其他二進(jìn)制文件中讀取構(gòu)建細(xì)節(jié) 。此功能旨在成為任何需要為 Go 二進(jìn)制文件生成軟件物料清單 (SBOM) 的工具的基礎(chǔ)。
- Go 1.17 曾添加了一個新的基于寄存器的調(diào)用約定,以加速 x86-64 系統(tǒng)上的 Go 代碼。Go 1.18 Beta 1 將該功能擴(kuò)展到 ARM64 和 PPC64,從而提高了 20% 的速度。
更多詳情可查看官方博客:https://go.dev/blog/go1.18beta1
本文轉(zhuǎn)自O(shè)SCHINA
本文標(biāo)題:Go 1.18 Beta 1 可用,帶有泛型
本文地址:https://www.oschina.net/news/173774/go-1-18-beta1-released