早在2022年12月12日,微软就发布了VS Code的多语言笔记本扩展插件 Polyglot Notebooks,所使用的引擎为. NET Interactive,目前支持包括C#、F#、PowerShell、JavaScript和SQL等多种语言。让数据科学家能够简单执行跨语言任务,就像是使用SQL查询SQL Server数据库,并将表格结果共享至JavaScript和HTML,创建可互动可视化的应用。

Notebooks是一种方便使用的交互式程序开发工具,可用于执行代码、可视化数据、执行方程式,或是编写纯文字,Notebooks的特性是让用户能以增量的和分段的方式,执行单元格内的程序。最有名的Notebooks来自Jupyter项目,多数人会结合Python和Jupyter Notebooks一起使用,快速迭代代码,以创建具有文字和数据可视化的内容,也可成为学习程序编程语言,或快速制作概念原型的工具。在2019年,微软通过创建支持C#、F#、PowerShell等.NET语言的Jupyter核心,将.NET带入Jupyter生态系统,而微软所开发的Polyglot Notebooks,则进一步扩展Notebooks的优点,过去开发者要在Notebooks上使用多种语言非常麻烦,难以使用一般IDE语法高亮显示和自动完成等功能。

Polyglot Notebooks扩展插件使用.NET技术所开发的.NET Interactive引擎,由于该引擎可充当笔记本中不同编程语言的核心,因此使得Polyglot Notebooks能够顺畅以多种语言进行开发,就像是连接SQL Server数据库和Kusto集群,并使用SQL或是KQL编写和执行查询。

开发者可在同一个笔记本中使用多种语言,并获得良好的开发体验,而不需要在使用多种语言时,在不同的工具间切换,当以一种语言完成工作时,开发者便可以将需要的变量共享给另一种语言,继续在同一个文件里进行开发。

安装

Polyglot Notebooks是一个 Visual Studio code 扩展。要使用它,您需要:

  • 安装.NET 7

  • 安装 Visual Studio Code (VS Code)

  • 启动VS Code 并安装 "Polyglot" 插件.

安装完毕之后,我们可以有两种开启方法:

  • 新增 ipynb 文件再切换到 .NET Interactive 引擎 (ipynb 文件是用于编写 IPython Notebook 的文件,也就是 Jupyter Notebook 在使用的文件。而微软把 .NET Interactive 引擎让 Jupyter Notebook 可以支持 C#, F#, SQL 等语言,让 Notebook 可以支持多语言的编写)

  • 使用 Polyglot Notebooks 的指令或快捷键,直接建立 dib 或 ipynb 文件

增一个 ipynb 文件:

现在我们已经可以看到让我们编码的单元格了,这样就完成准备工作啦!首先当然要从 Hello world 开始啦,让我们直接在单元格里面开写:

单元格的右下角可以让我们切换语言

例如说我们可以来个 JavaScript:

当然我们并不是只有这一个小小的单元格能用,可以按下左上角的「+code」来添加代码单元格,或是把鼠标移到单元格最底部,会出现执行之后帮你往下新增一格的按钮:

现在我们可以同时放上两个语言:

我们也可以针对某一格来执行,或是用鼠标选择指定的单元格,就可以选择执行指定的单元格以上或以下的部份,如果有修改某一格,然后要从修改的部分重跑一次的时候还挺方便的。此外还有复制贴上单元格、合并单元格等等操作,可以在下图右边红框的「...」找到,这边就不再赘述。

插入 Markdown 单元格

眼尖的朋友应该发现了,上面新增单元格的地方除了「+ code」以外,还有「+Markdown」的选项,毕竟 Polyglot Notebooks 这东西还是一本「笔记本」,只能贴 Code 不能写笔记还算什么笔记本呢,对吧?

因此我们可以在代码区块之间适当地加入 Markdown 区块,来提供需要的信息,或是纪录需要的笔记。让我们编写的过程可更有条理,之后回来阅读也可以更快掌握内容。

除了在最底下新增单元格的做法以外,我们也可以对指定的区块上下来插入新单元格:

我们很多情况并不会只用内置的语法就完成,通常还会安装一些 Nuget 组件来直接帮我们解决问题,在 Polyglot Notebooks 里面,我们要安装 Nuget 组件,要使用 #r “nuget:{套件名称}” 的指令

例如我想要安装 这个套件包Microsoft.SemanticKernel,我就可以这样写:

小结

这篇记录了 Polyglot Notebooks 的基本用法,能像 Python 的 Jupyter NoteBook 逐步对资料进行处理,又有 C# 的 Linq 能用,用这东西写个爬虫之类的小脚本,边跑随改实在是舒适的体验,用来学习算法之类的就很不错了。

VS Code多语言笔记本扩展插件 Polyglot Notebooks相关推荐

  1. 多语言笔记系列:Polyglot Notebooks 中使用 Html

    多语言笔记系列之:在 Polyglot Notebooks 中使用 Html 方式一:纯(传统)html方式 <!-- 主动声明单元格为 html 单元格,可以省略后在右下方选择! --> ...

  2. 【VS code】彩虹括号扩展插件 “Brackets Pair Colorize 2” 安装与自定义颜色

    安装 打开扩展商店 搜索 Brackets Pair Colorize 2 点击右下角 安装 进行安装 使用 brackets 进行搜索时,还可以看到另一款插件 Rainbow Brackets ,但 ...

  3. 多语言笔记系列:开篇 Polyglot Notebooks 概要与使用

    多语言笔记系列之开开遍:Polyglot Notebooks 概述 Polyglot Notebooks 是什么 什么是 Notebook Notebook(笔记)是一种混合格式化文本和可执行代码,创 ...

  4. VS Code 安装插件、自定义模板、自定义配置参数、自定义主题、配置参数说明、常用的扩展插件

    1. 下载和官网教程 下载地址:https://code.visualstudio.com/ 官方教程:https://code.visualstudio.com/docs 2. 安装插件 安装扩展插 ...

  5. vscode 结束_8 个给前端的顶级 VS Code 扩展插件

    翻译:京程一灯 原文:https://1stwebdesigner.com/top-free-extensions-for-vs-code/ 微软的 VS (Visual Studio) Code 是 ...

  6. chrome插件 vscode_2020年,前端开发者必备的10个VS Code扩展插件

    全文共1689字,预计学习时长5分钟 图源:Unsplash 在2017年,VSCode有260万月活跃用户(这是我找到的最新官方数据,现在肯定更多),可以说是目前最好的代码编辑器. 它最大的一个特点 ...

  7. vscode插件推荐2020_2020年,前端开发者必备的10个VS Code扩展插件

    全文共1689字,预计学习时长5分钟 图源:Unsplash 在2017年,VSCode有260万月活跃用户(这是我找到的最新官方数据,现在肯定更多),可以说是目前最好的代码编辑器. 它最大的一个特点 ...

  8. 5开发 时间格式化_2020年,前端开发者必备的10个VS Code扩展插件

    全文共1689字,预计学习时长5分钟 图源:Unsplash 在2017年,VSCode有260万月活跃用户(这是我找到的最新官方数据,现在肯定更多),可以说是目前最好的代码编辑器. 它最大的一个特点 ...

  9. vs code 开发企业级python_入股不亏!VS Code中最好用的Python扩展插件

    全文共1913字,预计学习时长5分钟 图源:unsplash Visual Studio Code无疑是最好用的开放源码编译器,而Python是其主要支持的语言,相应的微软扩展组件也毫不逊色,&quo ...

最新文章

  1. 关于linux内核的wait等待事件和wakeup的核心原理
  2. 剑指Offer-- 二维数组中的查找
  3. 2020恩智浦智能车大赛规则_2020年世界人工智能围棋大赛落幕,各路围棋AI共同论道...
  4. 并发容器(J.U.C)中的队列类
  5. Springboot响应处理
  6. MySQL结果集 数据查询(重点)
  7. linux运维生产场景常用软件工具一览
  8. Nginx-搭建https服务器
  9. 牛腩新闻发布系统—发布错误总结
  10. PCIE协议解析 synopsys IP loopback 读书笔记(1)
  11. 华三服务器管理口地址_不同型号服务器的默认管理IP及账号密码汇总
  12. Flash Cs4 安装之后打不开
  13. 编程机器人考级证书有用吗_机器人编程有等级考试吗?
  14. 深度时空网络、记忆网络与特征表达学习在 CTR 预估中的应用
  15. Axure绘制跑马灯
  16. 老师计算机组合照说说,生物老师座右铭 教师照片墙格言
  17. [教程]HP Envy J/K/Q/N系列Haswell平台 Clover引导安装黑苹果
  18. MySQL: 1366 incorrect string value
  19. AE插件GifGun一键创建输出gif动图
  20. 致3位阿里小伙伴的情书

热门文章

  1. linux系统U盘识别问题
  2. IOS实现微信授权登录
  3. 4 树莓派的分辨率和中文设置
  4. 论智慧湿地公园系统的绩效管理
  5. R手册(Common)--tidyverse+tibble
  6. 「命名空间内部使用的名字的查找」与「类成员定义中使用的名字的查找」的区别
  7. 解决动态加载java.lang.UnsatisfiedLinkError: dlopen failed * is 32-bit instead of 64-bit 报错
  8. java计算机毕业设计中小学图书馆管理源码+mysql数据库+系统+部署+lw文档
  9. 【LEDE】树莓派上玩LEDE终极指南-81-从U盘启动(并不推荐)
  10. win10 c语言语音朗读,win10安装朗读女软件