G#(GSharp)正作为一门面向微软 .NET 平台的编程语言持续推进,其目标是将 Go、Kotlin 和 Swift 风格的开发体验带入 CLR(公共语言运行时)。该语言的创建者将其定位为现代、简洁且易于上手的编程语言。
尽管目前仍处于 1.0 版本之前的开发阶段,G# 的定位是服务于那些希望使用小巧、可预测的语言、同时又能直接访问 .NET 生态系统的开发者。开发者在 G# 中可以看到 imports、func、structs、slices、maps、channels、go、select 以及用于迭代的 for in 等语法结构。此外,可空流(nullable flow)、对 CLR 的直接调用以及内置并发支持也是该语言的重要特性。
G# 版权归属于 2026 年,开发者可使用面向值的结构体(value-oriented structs)、面向引用的类(reference-oriented classes)、数据结构体(data structs)以及数据类(data classes)。在并发支持方面,G# 使用 scope 实现结构化并发,通过 async func 与 await 支持基于任务的异步操作,并以 async sequence[T] 处理异步流。同时,G# 也可使用 .NET BCL(基础类库)中熟悉的 Task 和 Task[T] 类型。
G# 的相关文档可在微软软件工程师 David Obando 的 GitHub 页面上查阅。官网介绍称:"所有 .NET 类型——包括你自己的包、第三方 NuGet 包以及 BCL——都可以用你已经熟悉的语法在 G# 中直接调用。CLR 泛型采用 G# 的方括号写法,方法调用、属性访问、索引器以及基于 IEnumerable[T] 的 for in 迭代均可开箱即用。"
面向 G# 的 Visual Studio Code 扩展已上架 marketplace.visualstudio.com。该扩展为 .gs 和 .gsproj 文件提供语法高亮、语言服务器功能、构建/运行命令及调试器配置。开发者可在 VS Code 内直接安装该扩展(在扩展视图中搜索"G#"),也可通过命令行进行安装。
Q&A
Q1:G# 编程语言有哪些主要特性?
A:G# 是一门面向 .NET 平台的现代编程语言,主要特性包括:支持 imports、func、structs、slices、maps、channels 等语法;提供可空流(nullable flow)与内置并发机制;支持值类型结构体、引用类型类、数据结构体与数据类;并发方面使用 scope、async func/await 及 async sequence[T],同时兼容 .NET BCL 中的 Task 和 Task[T] 类型,可直接调用所有 .NET 类型和 NuGet 包。
Q2:G# 和 Go、Kotlin、Swift 有什么关系?
A:G# 并非这三门语言的直接衍生,而是借鉴了它们的开发体验与设计理念,将类似的简洁、现代化的语法风格引入 .NET 平台。其目标是让开发者在使用 CLR 生态的同时,也能享受到 Go、Kotlin 和 Swift 那种轻量、可预测的编程体验。
Q3:如何在 VS Code 中安装 G# 扩展?
A:开发者可通过两种方式安装 G# 的 VS Code 扩展:一是在 VS Code 的扩展视图中直接搜索"G#"进行安装;二是通过命令行安装。该扩展支持 .gs 和 .gsproj 文件,提供语法高亮、语言服务器功能、构建与运行命令以及调试器配置,扩展页面地址为 marketplace.visualstudio.com。
热门跟贴