Go 部落格
發佈 Go 1.17
今天,Go 團隊非常高興發佈 Go 1.17,您可以瀏覽下載頁面取得。
此版本對編譯器有進一步的改進,特別是傳遞函數引數和結果的新方式。此變更已在 Go 程式中展現大約 5% 的效能提升,以及 amd64 平台上約 2% 的二進位檔案大小縮減。未來版本將提供對更多平台的支援。
Go 1.17 也增加了對Windows 上的 64 位元 ARM 架構的支援,讓 Gophers 能在更多裝置上原生執行 Go。
我們也有在此版本中導入精簡的模組圖表。在其 go.mod
檔案中指定 go 1.17
或更高版本的模組,其模組圖表只會包含其他 Go 1.17 模組的立即相依項,而非其完整的遞移相依項。這應有助於避免需要為否則無關的相依項下載或讀取 go.mod
檔案,從而節省日常開發時間。
Go 1.17 隨附三個小型的 語言變更。前兩個是新增於 unsafe
套件中的函式,讓程式更能輕鬆地符合 unsafe.Pointer
規則:unsafe.Add
允許 更安全的指標演算,而 unsafe.Slice
允許 更安全的指標轉換成切片。第三個變更則是語言型別轉換規則的延伸,允許將 切片轉換成陣列指標,前提是在執行階段時切片至少和陣列一樣大。
最後還有一些其他改進和錯誤修正,包含 crypto/x509 的驗證改進,以及 URL 查詢剖析 的變動。如要觀看變更的完整清單和有關上述改進的更多資訊,請參閱 完整的版本資訊。
感謝所有透過撰寫程式碼、提交錯誤、分享回饋,以及測試公開測試版和候選版本,為本次發行做出貢獻的人。您的努力協助確保 Go 1.17 盡可能地穩定。和往常一樣,如果您注意到任何問題,請 提交問題。
希望您會喜歡新版本!
下一篇:整理 Go 網路體驗
上一篇:至 Stack Overflow 上的 Go 社群
部落格首頁