当前位置:首页 > 科技  > 软件

提升 Go 编程:Go 1.22 中有哪些新特性?

来源: 责编: 时间:2024-01-22 08:43:27 147观看
导读深入了解 Go 1.22 版本及其语言增强功能随着 Go 编程语言的不断发展,即将发布的版本 Go 1.22 承诺带来各种新功能、改进和变化。预计于 2024 年 2 月发布的 Go 1.22 引入了对语言、工具、运行时、编译器和核心库的增强

深入了解 Go 1.22 版本及其语言增强功能

随着 Go 编程语言的不断发展,即将发布的版本 Go 1.22 承诺带来各种新功能、改进和变化。预计于 2024 年 2 月发布的 Go 1.22 引入了对语言、工具、运行时、编译器和核心库的增强。让我们深入了解一些在这个即将发布的版本中开发者可以期待的重要变化和新增功能。bvg28资讯网——每日最新资讯28at.com

bvg28资讯网——每日最新资讯28at.com

语言的变化

(1) “For” 循环增强bvg28资讯网——每日最新资讯28at.com

在 Go 1.22 中,“for” 循环有两个显著的变化。在此之前,“for” 循环内声明的变量会在每次迭代中创建一次并进行更新。而新版本中,每次迭代都会创建新的变量,以防止意外的共享错误。此外,“for” 循环现在可以在整数上进行范围遍历,为循环结构提供了更多灵活性。bvg28资讯网——每日最新资讯28at.com

示例:bvg28资讯网——每日最新资讯28at.com

package mainimport "fmt"func main() {  for i := range 10 {    fmt.Println(10 - i)  }  fmt.Println("go1.22 has lift-off!")}

(2) 函数迭代器的范围(预览)bvg28资讯网——每日最新资讯28at.com

Go 1.22 包含了一个关于范围函数迭代器的语言变更的预览。可以通过使用 GOEXPERIMENT=rangefunc 构建来启用此功能。bvg28资讯网——每日最新资讯28at.com

工具

(1) Go 命令bvg28资讯网——每日最新资讯28at.com

Go 命令引入了与工作区依赖项相关的增强功能。工作区现在可以使用包含依赖项的 vendor 目录,而 go work vendor 命令会创建并使用此目录。值得注意的是,在传统的 GOPATH 模式中,go get 不再在模块外受支持。bvg28资讯网——每日最新资讯28at.com

(2) Trace 工具bvg28资讯网——每日最新资讯28at.com

Trace 工具的 Web UI 已进行了更新,解决了问题并提高了可读性。由 Go 1.22 或更新版本生成的跟踪将受益于这些改进,计划在未来版本中扩展到旧版本的跟踪。bvg28资讯网——每日最新资讯28at.com

(3) Vet 工具bvg28资讯网——每日最新资讯28at.com

Vet 工具引入了新的警告,包括:bvg28资讯网——每日最新资讯28at.com

  • 对循环变量的引用:反映循环变量语义的变化。
  • 在 append 后缺失值的警告。
  • 对推迟调用 time.Since 的警告。

运行时

(1) 垃圾收集元数据优化bvg28资讯网——每日最新资讯28at.com

Go 1.22 通过将垃圾收集元数据保持更接近每个堆对象来优化垃圾收集元数据。这提高了大多数程序的 CPU 性能 1–3%,并减少了内存开销。但是,它可能会影响依赖于特定内存对齐的程序,需要进行调整。bvg28资讯网——每日最新资讯28at.com

(2) Windows/AMD64 增强bvg28资讯网——每日最新资讯28at.com

在 windows/amd64 端口上,程序现在可以使用 SetUnhandledExceptionFilter Win32 函数来捕获 Go 运行时未处理的异常,增强了调试功能。bvg28资讯网——每日最新资讯28at.com

编译器

(1) 档案引导优化(PGO)改进bvg28资讯网——每日最新资讯28at.com

Go 1.22 中的 PGO 构建可以使更高比例的调用进行虚拟化,从而使大多数程序的性能提高 2–14%。编译器还引入了接口方法调用的改进内联启发式算法。bvg28资讯网——每日最新资讯28at.com

(2) 新的内联阶段(预览)bvg28资讯网——每日最新资讯28at.com

引入了一个增强的内联阶段的预览,其中包含在重要调用点提高内联能力的启发式算法,同时在不太关键的调用点上不鼓励内联。通过使用 GOEXPERIMENT=newinliner 构建来启用此功能。bvg28资讯网——每日最新资讯28at.com

链接器

链接器的 -s 和 -w 标志在所有平台上的行为更加一致,为 ELF 平台和 Windows 引入了其他功能。bvg28资讯网——每日最新资讯28at.com

核心库

(1) Math/Rand 版本 2bvg28资讯网——每日最新资讯28at.com

Go 1.22 引入了标准库中的第一个“v2”包:math/rand/v2。此版本带来了改进,包括一个新的全局生成器和更快的算法。bvg28资讯网——每日最新资讯28at.com

(2) 增强的 HTTP 路由模式bvg28资讯网——每日最新资讯28at.com

net/http 标准库中的 HTTP 路由模式变得更加表达,支持方法、通配符,并改进了重叠模式的处理。bvg28资讯网——每日最新资讯28at.com

对库的次要更改

核心库经历了与 Go 1 兼容性承诺一致的各种次要更改和更新。此外,整体上进行了性能改进。bvg28资讯网——每日最新资讯28at.com

结论

Go 1.22 为语言、工具、运行时、编译器和核心库带来了一系列令人兴奋的功能和改进。开发者可以期待增强的循环语义、改进的工具、优化的垃圾收集等等。专注于保持兼容性和性能,Go 作为一种多才多艺且高效的编程语言继续发展。请关注 2024 年 2 月的正式发布,并探索 Go 1.22 提供的新可能性。bvg28资讯网——每日最新资讯28at.com

Go 1.22 将于 2024 年 2 月发布。bvg28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-65876-0.html提升 Go 编程:Go 1.22 中有哪些新特性?

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: C/C++语言宏定义函数封装小妙招!

下一篇: 牢记这16个SpringBoot 扩展接口,写出更加漂亮的代码

标签:
  • 热门焦点
  • 直屏旗舰来了 iQOO 12和K70 Pro同台竞技

    直屏旗舰来了 iQOO 12和K70 Pro同台竞技

    旗舰机基本上使用的都是双曲面屏幕,这就让很多喜欢直屏的爱好者在苦等一款直屏旗舰,这次,你们等到了。据博主数码闲聊站带来的最新爆料称,Redmi下代旗舰K70 Pro和iQOO 12两款手
  • 天猫精灵Sound Pro体验:智能音箱没有音质?来听听我的

    天猫精灵Sound Pro体验:智能音箱没有音质?来听听我的

    这几年除了手机作为智能生活终端最主要的核心之外,第二个可以成为中心点的产品是什么?——是智能音箱。 手机在执行命令的时候有两种操作方式,手和智能语音助手,而智能音箱只
  • 一文看懂为苹果Vision Pro开发应用程序

    一文看懂为苹果Vision Pro开发应用程序

    译者 | 布加迪审校 | 重楼苹果的Vision Pro是一款混合现实(MR)头戴设备。Vision Pro结合了虚拟现实(VR)和增强现实(AR)的沉浸感。其高分辨率显示屏、先进的传感器和强大的处理能力
  • 一年经验在二线城市面试后端的经验分享

    一年经验在二线城市面试后端的经验分享

    忠告这篇文章只适合2年内工作经验、甚至没有工作经验的朋友阅读。如果你是2年以上工作经验,请果断划走,对你没啥帮助~主人公这篇文章内容来自 「升职加薪」星球星友 的投稿,坐
  • 学习JavaScript的10个理由...

    学习JavaScript的10个理由...

    作者 | Simplilearn编译 | 王瑞平当你决心学习一门语言的时候,很难选择到底应该学习哪一门,常用的语言有Python、Java、JavaScript、C/CPP、PHP、Swift、C#、Ruby、Objective-
  • 使用AIGC工具提升安全工作效率

    使用AIGC工具提升安全工作效率

    在日常工作中,安全人员可能会涉及各种各样的安全任务,包括但不限于:开发某些安全工具的插件,满足自己特定的安全需求;自定义github搜索工具,快速查找所需的安全资料、漏洞poc、exp
  • 中国家电海外掘金正当时|出海专题

    中国家电海外掘金正当时|出海专题

    作者|吴南南编辑|胡展嘉运营|陈佳慧出品|零态LT(ID:LingTai_LT)2023年,出海市场战况空前,中国创业者在海外纷纷摩拳擦掌,以期能够把中国的商业模式、创业理念、战略打法输出海外,他们依
  • 10天营收超1亿美元,《星铁》比《原神》差在哪?

    10天营收超1亿美元,《星铁》比《原神》差在哪?

    来源:伯虎财经作者:陈平安即便你没玩过《原神》,你一定听说过的它的大名。恨它的人把《原神》开服那天称作是中国游戏史上最黑暗的一天,有粉丝因为索尼在PS平台上线《原神》,怒而
  • 年轻人的“职场羞耻感”,无处不在

    年轻人的“职场羞耻感”,无处不在

    作者:冯晓亭 陶 淘 李 欣 张 琳 马舒叶来源:燃次元“人在职场,应该选择什么样的着装?”近日,在网络上,一个与着装相关的帖子引发关注,在该帖子里,一位在高级写字楼亚洲金
Top