当前位置: 欣欣网 > 码农

谷歌内部用Java比Go还多?

2024-06-06码农

众所周知,Go 这一门编程语言的最大金主爸爸是 Google,Go 核心团队绝大部分也都在 Google 中工作,Google 为他们支付工资、福利等任何薪酬相关的内容。

那在 Google 里到底对于 Go 的使用又是什么情况呢?今天我们基于社区的讨论,一起快速了解内部情况。

快速背景

最近在国外 reddit 社区的 r/golang 频道上,有人发出了直击灵魂的提问:「How much Go is used at Google?」。

现场有许多 Google 员工现身说法。以前很多朋友说 Google 里自己都不用 Go(尴尬得很)。

这回让我们一起看看 Google 自家人用 Go 用的怎么样!

网友们现身说法 TOP3

  • @assbuttbuttass:

  • 自己是在 Google Cloud 团队进行工作。目前所有的新项目都使用 Go 语言。

  • 仍有很多旧代码是用 C++ 编写的。

  • 使用 Go 还是 C++ 取决于你具体所在的团队。

  • @deathmaster99:

  • 这很大程度上取决于团队。他在 Google 工作,整个代码库都是用 Java 编写的,所有新服务都要用 Kotlin 编写。

  • 我确信对于全新的服务,Go 是默认选项。但这 只占代码库的 10 %。

  • 绝大部分都是用 C++ 编写的传统代码。

  • @eloquent_beaver:

  • 这确实取决于您的产品领域。

  • Google 拥有多个内部服务器框架,为新服务器开发铺平了道路,Java/Kotlin、Go 和 C++ 都得到了支持和广泛应用。

  • Java 或 Kotlin 在某些 PA 中备受青睐,而 Go 则在其他 PA 中备受青睐。甚至 C++ 也被用于那些需要高效处理数千万 QPS 的服务器(每个请求的成本相差百万分之一美元也很重要)。

  • 结论

    从所有的评论和交流来看,Google 作为一家庞大的公司,必然存在着不同的业务领域和使用方式。

    我们可以得出决定会不会使用 Go 的原因取决于: 团队的倾向和业务的产品领域 。像是 Java 和 Kotlin 肯定在 Android 产品中使用较多。

    而 Go 核心团队本身是在 Google Cloud 团队中,因此 云原生这一块天然的拥有更多的 Go 亲和性,使用的人会更多

    但即使如此,Go 项目的代码在个别团队中也只占有 10% 左右的比例(via @deathmaster99)