go语言之路

go1.16

go1.16新特性

借此简单说说为什么我会选择golang

  • 语法简单但功能强大(一种莫名的喜欢无法自拔)
  • 未来10年有潜力
  • 还年轻,愿意陪着它去成长(目前java,c,c++,python等语言包袱太重,特性太多,一时间搞不太清楚)

尽管目前生态还不行

但发展迅速。很快便会有它的一席之地

embed 包和 //go:embed 指令

新的 embed 包使用新的//go:embed 指令,在编译时嵌入的文件,并对其进行访问。现在可以轻松地将支持数据文件捆绑到 Go 程序中,从而使使用 Go 进行开发更加顺畅。通过它,真正做到部署时只有一个二进制文件。

package main
import (
    "embed"
    "fmt"
)
//go:embed hello.txt hello2.txt
var f embed.FS
func main() {
    data, _ := f.ReadFile("hello.txt")
    fmt.Println(string(data))
    data, _ = f.ReadFile("hello2.txt")
    fmt.Println(string(data))
}

增加对 macOS ARM64 的支持

官方给力噢 又增加了我想买macbook pro m1的冲动

今年一定要入手

冲冲冲

默认启用 Module

注意,Go 1.16 默认使用 Go 模块。根据官方 2020 Go 开发人员调查,现在有 96% 的 Go 开发人员已进行了更改。

io/fs 包

对文件系统进行抽象,一定程度上是配合 embed 进行的,否则应该不会这么快跟着发布。不过这个包还是很不错的。同时不建议使用 io/ioutil 了,因为其中的内容移到 os 和 io 包了。

最后,还有许多其他改进和错误修复,包括构建速度提高了 25%,内存使用量减少了 15%。有关更改的完整列表以及有关上述改进的更多信息,请参阅 Go 1.16 发行说明https://golang.org/doc/go1.16

new year wishes

上一篇

漫画第一集之新年篇

下一篇

你也可能喜欢

发表评论

您的电子邮件地址不会被公开。 必填项已用 * 标注

提示:点击验证后方可评论!

插入图片

个人微信公众号

we-tuiguang

qq交流群

群号:1046260719

微信扫一扫

微信扫一扫