为什么字节跳动选择使用 Go 语言?
Golang 是最年轻的编程语言之一,在写这篇内容之前,目前稳定的 Golang 版本是 1.19.5。
除此之外,它被认为是一种在开发者中很受欢迎的编程语言。它可以在许多平台和环境中构建和运行,有丰富且实用的内置包。
我使用 Golang 是因为它简洁明了,结构化,而且干净。
接下来,我会介绍为何选择 Golang。我不打算将 Golang 与其他编程语言进行比较,因为我认为并没有什么意义和价值。
所以,我会从语言结构本身开始介绍,让你领会 Golang 的与众不同。
语言结构
我不会介绍所有的 Go 语言语法,但上面的代码是 Golang 代码的一个例子。
你现在不需要理解它,但你可以学习代码的结构,从 package 和 import,到 func main 作为入口点,if-else 和 for 循环作为控制结构之一,还涉及到 types、nil、errors 等等。
它是严格的类型化的,使用大括号作为范围,即使你只写了一行控制结构,使用 nil 而不是 null(在这里节省了 1 个字符),并且只用分号来分隔语句,而不是结束它。
综上所述,Golang 的语法很适合初学者,至少我是这么认为的。
你不用担心写出质量较差的代码语法,因为 Golang 不仅有完善的指南来教你如何写的更好,它也有自己的 linter 和 formatter,来规范化你的代码。
内置支持
Golang 带来了自己内置的工具来帮你构建一个优秀的应用程序。
Linter? Formatter? Tester? 你说了算。
它也有一个垃圾收集器,原生支持并发,还支持在线运行。除此之外,Golang 也有支持性的内置包。你可以在没有任何第三方模块的情况下编写一个网络应用、命令行界面应用,甚至是一个 Web Assembly 应用。
但是,如果你想创建一个 Golang 模块呢?让我们来谈谈这个问题。
模块
你可以在本地和远程轻松地创建一个 Golang 模块。
只需执行 go mod init <module-name>,然后像往常一样编码即可。
Golang 模块开箱即支持 git,你可以直接把你的 Golang 模块推送到 git 仓库,然后把它导入你的代码中。
例如,如果你想导入 Postgres 插件或数据库凭证模块,你只需输入 git repo 的名字就可以导入。
构建结果
Golang 将你的代码构建成二进制文件。
如果你在 Windows 上,它将把你的代码构建成可执行文件,如果你在 Linux 上,它将构建一个 ELF 文件,以此类推。
另外,你可以只用一个环境变量来控制构建。
假设你在一台 Linux 机器上,但你想为 Windows 创建一个可执行文件,只要告诉它就可以了。
你也可以创建一个 Web Assembly 模块。
在前面的内容里,我并没有面面俱到详细介绍 Go 语言的每一处细节,只是主观的介绍了一些我个人比较欣赏的亮点。
如果,这能够引起你对 Go 语言的兴趣,可以通过书籍或者教程去深入、系统的学习。
hello,大家好,我是 Jackpop,重点大学本科毕业后保送到哈工大计算数学专业读研,有多年国内头部互联网、IT 公司工作经验,先后从事过计算机视觉、推荐系统、后端、数据等相关工作。如果同学们在升学考研、职业规划、高考志愿、简历优化、技术学习等方面有困惑,欢迎大家前来咨询!
版权声明: 本文为 InfoQ 作者【Jackpop】的原创文章。
原文链接:【http://xie.infoq.cn/article/15a44ae2426eb1ee306573b36】。文章转载请联系作者。
评论