當前位置: 妍妍網 > 碼農

谷歌內部用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)