3.1 开发框架Electron

        VSCode是基于Electron开发的,Electron是一个纯粹的开发框架,以Node.js作为运行时,以Chromium作为渲染引擎,使得开发者可以使用HTML、CSS和JavaScript这样的前端技术栈开发跨平台的桌面GUI应用程序。除了VSCode、Atom,Skype、GitHub Desktop、Slack、Microsoft Teams、WhatsApp等都是使用Electron开发的

3.2 代码编辑器Monaco Editor

        Monaco Editor是一个基于浏览器的代码编辑器,支持业界主流浏览器,包含的一个编辑器所需要的众多功能:智能提示、代码验证、语法高亮、代码片段、代码格式化、代码跳转、键盘快捷键、文件比较等。非常多的在线IDE都是基于Monaco Editor开发的。

3.3 开源编程语言TypeScript

        VSCode词啊用TypeScript开发,TypeScript是微软开发的开源编程语言,是JavaScript的超集,在JavaScript的基础上添加了许多功能:类型批注、类型推断、类型擦除、接口、枚举、Mixin、范型编程、名字空间、元组。

        由此可以在一下环节中带来便利:

        编写代码时:相对轻松的智能提示(由于TypeScript带来了类型支持)

        可以使用TSLint或者ESLint这样的工具进行实时静态检查

        编译时可以通过TypeScript编译器急性类型检查

        持续集成或部署时也可以进行相对轻松的代码检查,提前发现在运行时出现的错误。

        除此之外TypeScript还引入了声明文件(扩展名为.d.ts)类似C++的头文件,可以引用第三方库文件。

3.4 语言服务器LanguageServerSprotocol

        Language Server Sprotocol(LSP)时编辑器/IDE与语言服务器之间的一种协议,通过JSON- RPC传输消息,可以让不同的编辑器/IDE嵌入各种编程语言。

3.5 DebugAdapterProtocol

与LSP类似,Debug Adapter Protocol (DAP)‌ 是一种‌标准化的调试适配器协议‌,用于在‌开发工具(如 IDE 或编辑器)‌ 与 ‌调试器(debugger)‌ 之间建立统一通信接口

3.6 Xterm.js

        VSCode的集成中断功能是基于开源项目Xterm.js进行开发的。

        Xterm.js是一个使用TypeScript开发的前端组件,他把完整的终端功能带入了浏览器,主要包括以下功能:

        终端应用:Xterm.js可以与主流的终端应用完美结合,如bash、vim和tmux。

        高性能:Xterm.js运行速度很快,也支持GPU加速渲染

        丰富的Unicode支持:支持Emoji表情符号、输入法编辑器以及CJK字符集(中日韩统一表意文字)。

        自包含:不需要额外的依赖

        可访问性:支持频幕阅读器

        其他功能:链接支持、主题、插件、完整的API文档等。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐