Go編程語言1.22發布

Go 1.22 程式語言發布,由 Google 在社群參與下開發,作為混合解決方案,結合了編譯語言的高效能和腳本語言易於編寫程式碼等優點、開發速度和錯誤保護。 項目代碼在 BSD 許可證下分發。

Go 的語法是基於熟悉的 C 語言元素,並藉鑒了 Oberon 語言的一些內容。語言相當簡潔,但程式碼很容易閱讀和理解。 Go程式碼被編譯成單獨的二進位可執行文件,在本地執行,無需使用虛擬機器(分析、調試模組和其他運行時問題檢測子系統集成為運行時組件),這使得性能與C程式相當。

該項目最初的開發著眼於多線程編程和多核系統上的高效操作,包括提供在操作員級別實施的方法,用於組織並行計算和並行執行方法之間的交互。 該語言還提供內置保護,防止分配的內存塊溢出,並提供使用垃圾收集器的能力。

新版本的變化包括:

  • 「for」循環中加入了對定義整數範圍的支持,例如,要迭代 0 到 9 的值,現在可以使用「for i := range 10 {...}」循環。
  • 新增了對 for 循環範圍函數的實驗性 (GOEXPERIMENT=rangefunc) 支持,可讓您將函數指定為迭代器。例如,“for i, x := range slices.Backward(s) {...}”
  • 一個長期存在的 for 迴圈問題,導致 goroutine 呼叫在迭代之間共享循環變量,現已解決。例如, values := []string{"a", "b", "c"} for _, v := range values { go func() { fmt.Println(v) done

    來源: opennet.ru

添加評論