VS Code 中的 Polyglot Notebooks
什么是多语言编程?
多语言编程(Polyglot programming)是一种实践,它使用多种编程语言,以利用每种语言在不同任务中的优势。
什么是 Notebooks?
Notebooks 是交互式文件,允许将可执行代码、可视化、方程式和叙述性文本混合在一起。Notebooks 由代码单元格组成,可以轻松地对代码进行快速迭代。由开源项目 Jupyter 推广开来后,它们已成为Python 数据科学事实上的工具,也是教授或学习新编程语言以及进行快速原型设计的绝佳资源。
Polyglot Notebooks
当多语言编程与 notebooks 相遇时,便有了 Polyglot Notebooks!与通常与 Python 一起使用的传统 notebooks 不同,Polyglot Notebooks 扩展允许你在 Visual Studio Code 的同一个 notebook 中原生使用多种编程语言!再也无需使用包装库或魔法命令在同一个 notebook 中使用你喜欢的语言了!
支持的语言
- C#
- F#
- PowerShell
- JavaScript
- HTML
- Mermaid
- SQL
- KQL(Kusto 查询语言)
功能
除了执行上述语言的代码外,你还可以利用以下功能:
-
连接并查询 Microsoft SQL Server 数据库和 Kusto 集群。
-
每种语言的语言服务器支持,如 IntelliSense、自动补全和语法高亮。
-
语言之间的变量共享,确保 notebook 内工作流的连续性。(变量共享不适用于 HTML 和 Mermaid)
-
通过变量浏览器检查变量状态以及变量所在的子内核。
-
与 Jupyter/JupyterLab 完全兼容.
要了解所有功能,请访问 VS Code Marketplace Polyglot Notebooks 扩展页面。
先决条件
要在 VS Code 中使用 Polyglot Notebooks,你需要:
为什么我需要 .NET SDK?
Polyglot Notebooks 扩展由 .NET Interactive 提供支持,这是一个基于 .NET 技术构建的尖端创新引擎,可以运行多种语言并在它们之间共享变量。在 Polyglot Notebooks 中,该引擎充当 notebook 的内核,这也是需要 .NET 9 SDK 的原因。
入门
-
要创建你的第一个多语言 notebook,请打开命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P))并选择 Polyglot Notebooks: Create new blank notebook,选择
.ipynb
,然后选择你希望开始使用的语言。你也可以通过创建一个新文件并将其扩展名命名为
.ipynb
来创建 notebook。在这种情况下,请确保在右上角将 .NET Interactive 选为 notebook 的内核。 -
默认情况下,新添加的单元格将与其上方的单元格使用相同的语言。要更改语言,请选择单元格右下角的语言选择器。
-
开始编码吧!
处理数据
连接并查询 Microsoft SQL Server 数据库和 Kusto 集群。
要获取有关连接和使用数据源的更详细说明,请访问处理数据文档。
语言服务器支持
Polyglot Notebooks 中的每种语言都通过语言服务器支持(如自动补全、语法高亮和签名帮助)获得一流的编辑体验。
变量共享和变量浏览器
使用 #!set
命令在语言之间共享变量,并使用变量浏览器检查每种语言的变量值。请注意,如果你之前使用 #!share
命令,它将继续有效。选择全局工具栏中的变量图标以打开变量浏览器。
要了解有关变量共享的更多信息,请访问变量共享文档。
功能请求和反馈
Polyglot Notebooks 扩展由 .NET Interactive 提供支持,你可以在 .NET Interactive GitHub 仓库中提供反馈和提交问题。