這是?Reddit?平臺上面這幾天一篇比較熱門的帖子,?非常有意思,本文我列出了幾個高贊的回答。
👦 HahahahahaSoFunny
為什么 Docker 和 Kubernetes 工具是用 Go 寫的而不是 C#?
總所周知,現在開發人員使用的很多新工具大多是用 Go 寫的。為什么不是 C# 呢? .NET 和 C# 現在功能已經很強大了,是不是社區缺少這種文化?如何才能培養一種更加開源的文化, 因為很多開發人員對 .NET 和 C# 仍然還抱有偏見。我認為用 C# 編寫更多有趣和有用的開源工具,可以大大的改變人們的看法。
👦 haho5:
不確定為什么 Docker 是用 Go 寫的, 但是 Kubernetes 確實是 Google 開發的, 并且 Golang 也是。
👨 XalAtoh:
因為開發人員只是更喜歡 Go 而已。
👨 enry_straker:
坦白說,即便是現在,如果可以選擇的話,我更愿意在考慮 C# 之前,使用 C、C++、Rust 或 Golang 等語言編寫系統工具。
👨 TheAmericanBanana:
我覺得可能是在 Docker 和 Kubernetes 最開始開發時 .NET Core 還不存在( .NET Framework 確定是有的),另外,Kubernetes 和 Go 都是谷歌開發的。
👨 pnw-techie:
Docker 在 2011 年推出。
2014 年 11 月 12 日,Microsoft 宣布推出 .NET Core,以包括對 .NET 的跨平臺支持。
Rust 編譯器的第一個編號的 pre-alpha 版本在 2012 年 1 月發布。
答案已經很清楚了,在創建 docker 的時候,實際上不可能用 C# 或 Rust 編寫 Docker。
👦 williane:
不同的工具用于不同的目的,C# 非常適合編寫面向用戶的產品,它將開發人員從大多數低級細節中抽象出來,讓我們專注于把業務需求轉換為工作代碼。
而像 C/C++ 這樣的稍微低級的語言可以讓您更接近硬件,對性能有要求時,這是最合適的。
我可以用螺絲刀敲打釘子很多次,也可以用錘子花很大的力氣把螺絲打進去,都可以完成工作。但是實際上,應該根據工作場景選擇使用正確的工具。
👦 bilby2020:
我曾經是一名 C# 程序員(現在還在做一點)。不管你喜不喜歡,C# 的語法太復雜了。它從 2.0 到現在的 10.0 變化非常快,相同的代碼邏輯可以用太多不同的方式編寫。
而 GO 是一門簡單的語言,很受歡迎,因為好的代碼應該易于閱讀和理解,以便成千上萬的開源程序員做出貢獻。
Go 大概只有 25 個關鍵字,而 C# 有 100 多個,并且有很多語法糖。
代碼只是建立技術或商業價值的一種手段,熟悉語言代碼風格,然后快速地為大型開源項目做出貢獻很重要。
感興趣的同學可以通過下面的鏈接,查看原文
https://bit.ly/3lJxXFx

點點點,贊和在看都在這兒!
