微軟工程師David Obando推出新程式語言G#,簡化.NET開發



由微軟工程師David Obando所開發 .NET生態系新程式語言G#(GSharp)已經問世,它目標是提供更簡潔、可預測的語法,同時完整保留.NET的強大生態與執行環境,目前仍處於pre-1.0開發階段。

G#的核心定位

G#直接編譯成managed .NET組件,可在標準.NET runtime上執行,並能無縫呼叫任何CLR類型、NuGet套件與BCL。它借鑑Go的簡潔與並發模型、Kotlin的現代語法與資料類別,以及Swift的明確型別與nullable處理,試圖在C#之外提供另一種更輕量的.NET語言選擇。


主要特色包括:

  • 簡潔的func宣告、struct、slice、map
  • 明確的nullable處理(如if let)
  • 結構化並發(scope)與async/await
  • 可選的channel與goroutine風格並發
  • 完整支援.NET工具鏈(MSBuild、VS Code擴充、除錯)

與其他語言的比較

與C#比較

C#是.NET的主力語言,功能完整、語法成熟,但隨著版本演進,語言表面積已變得相當龐大。G#刻意保持「小而可預期」,減少語法複雜度,同時完全相容現有.NET函式庫。適合想要C#生態優勢、卻偏好更簡潔語法的開發者。兩者可互通,G#程式能直接呼叫C#寫的函式庫。

與Ruby比較

Ruby強調開發者幸福與高度動態彈性,語法優雅但執行效能與型別安全相對較弱。G#則走靜態型別路線,強調明確性與效能,並直接受益於.NET的JIT與工具鏈。Ruby適合快速原型與Web開發,G#更偏向需要穩定性與效能的.NET應用場景。

與Python比較

Python以簡單易學與豐富函式庫著稱,但GIL限制與動態型別在大型專案中可能帶來挑戰。G#提供類似的簡潔感,卻擁有靜態型別檢查、更好的並發模型,以及原生.NET效能。Python生態在資料科學與AI仍占優勢,G#則專注於.NET應用開發的生產力與可維護性。

適合用途

G#目前較適合:

  • 想在.NET上使用更簡潔語法的新專案
  • 需要良好並發支援的後端服務
  • 希望降低C#複雜度、同時保留生態優勢的團隊
  • 原型開發後可平滑過渡到完整.NET生產環境的場景

由於仍屬早期階段,大型正式專案建議謹慎評估,可先用於內部工具或較小模組。

原始來源

  • 官方網站與文件:https://davidobando.github.io/gsharp/
  • GitHub專案:https://github.com/DavidObando/gsharp
  • InfoWorld報導:https://www.infoworld.com/article/4200337/g-sharp-language-for-net-borrows-from-go-kotlin-and-swift.html

G#的出現,反映.NET社群對「更現代、更精簡語言體驗」的需求。它不會取代C#,但提供了另一條進入.NET生態的路徑,值得持續觀察後續發展。


相關文章:

Windows 內建Compact OS壓縮機制最多可釋放超過 10GB 系統碟空間  [8/26/2026]
微軟宣布年底前優化8GB記憶體 Windows11電腦,因應全球零組件短缺  [8/3/2026]
微軟 Cyber Stack — Project Perception 正式亮相  [7/28/2026]
微軟延長 Windows 10 安全更新至 2027 年  [7/13/2026]
Microsoft 推出 Cloud Rebuild 無需 USB 即可重建 Windows 11  [7/8/2026]
[「擇法善思林之蘭室藏津」的緣起]
獨家》他也參選新竹縣長!朱定瑀:為了發動50年來第4次土地改革
中職》昨抗議台鋼洋投艾速特突襲投球 餅總解釋原因
高雄黃金路口「億元廢墟」迎新租客 生鮮超市將進駐
雙北合體!李四川稱蔣萬安遭抹黑「跟我過去一樣」 帶蔣拜廟消災解厄
打造護國群山2》半導體設備拚自主 台廠進步快、日商壓力增
美網》帶著古希臘哲學上場 西西帕斯逆轉捷克種子首闖16強
老爸花園夜市紅利爆爭產糾紛!女婿控失智 女兒拿錄音翻盤
自體旋轉皮瓣重建口腔缺損 助患者恢復口腔功能銜接治療計畫
蘇巧慧首場大型造勢!「粉紅超跑」林姍開唱 賴清德壓軸致詞
台東男體育場裸露下體「健走」 判拘役59日
亞運棒球》台灣隊24人名單7日公布 劉致榮等人遞補
蔣萬安兒赴美惹議 沈伯洋:外界聚焦程序非針對小孩
甩「行人地獄」反變跨欄障礙賽? 羅東新設護欄擋道惹議
氣象署派各種「空中偵察兵」 無人機可每小時飛一次追天氣
76歲瓜農廖榮煌奪「木瓜王」 揭40年功夫祕訣
[擇法善思林之蘭室藏津]