探索Visual Studio Code:轻量级跨平台开发工具

在.NET世界中沉浸了十年之后,不禁思考:为什么需要使用Visual Studio Code(VS Code)?现有的Visual Studio对来说已经足够了。然而,VS Code是微软推出的一个完全不同的产品,虽然它没有VS那么强大,但它们之间并没有太多可比性。VS Code拥有自己的独特优势。

在看来,VS Code的两个主要产品差异化点是:

VS Code提供了一种新的开发者工具选择,它结合了代码编辑器的简洁性和流线型体验,以及开发者在核心代码编辑-调试周期中所需的最佳功能。尽管它不像VS那样用户友好,但它的加载时间几乎是即时的,具有超快的速度。此外,它已经集成了基本的GIT客户端、代码自动补全和调试工具。这种精简特性支持了特定开发者的生产力。

VS Code是Visual Studio家族中第一个代码编辑器,也是第一个跨平台开发工具——支持OSX、Linux和Windows。如果更喜欢以代码编辑器为中心的开发工具,或者正在构建跨平台的Web和云应用程序,VS Code是正确的选择。

尽管VS Code技术还不到一年,但其采用/增长速度令人钦佩。VS Code的发布历史如下:

从时间线图可以看出,本月的主要发布1.0相当稳定,并支持核心开发者的关键特性。

产品使用

VS Code基于文件和文件夹。可以打开包含代码或项目文件的文件或文件夹。VS Code提供了直观的用户界面——用户界面基本上包括以下部分:

  • 编辑器:这是实际的代码编辑器,可以在这里打开和编辑代码文件。
  • 视图栏:可以使用它来切换视图。
  • 状态栏:它提供了关于打开的代码文件和项目的详细信息。
  • 侧边栏:它包含资源管理器,可以使用它来打开和管理文件和文件夹。

VS Code的一个最引人注目的特性是支持并排编辑。它允许开发者并排打开多达三个编辑器。此外,它还允许用户根据需要调整编辑器的大小、重新排序和重新定位。

例如,为NodeJS编写了一个UDP通信的示例代码,所有这些代码都可以通过并排编辑功能查看,如下所示:

var dgram = require('dgram'); var server = dgram.createSocket('udp4'); var msg = "Server::message"; server.on('message', function(data, client) { console.log('Received data from client: ' + data); console.log('Client IP address: ' + client.address + ' Port:' + client.port); }); server.on('listening', function() { var address = server.address(); console.log('Server is listening at IP: ' + address.address + ' Port:' + address.port); }); server.on('error', function(err) { console.log('Server Error: ' + err); server.close(); }) server.bind(9094);

上述代码片段是创建UDP服务器端功能的NodeJS示例程序。UDP客户端示例程序如下所示。

var net = require('dgram'); var client = net.createSocket('udp4'); var port = 9094; var server = 'localhost'; var message = new Buffer("Client::this is from client"); console.log("message is ON"); client.send(message, 0, message.length, port, server, function(err, bytes) { if (err) console.log(err); else client.close(); });

语言支持

VS Code内置了对ASP.NET 5开发(C#)和Node.js开发(TypeScript和JavaScript)的丰富支持,这些技术支持了Visual Studio的底层技术。目前,VS Code支持30多种编程语言,如C#、Java、PHP、C++以及新兴语言如R、NodeJS等。

对于严肃的编码,开发者通常需要将代码视为不仅仅是文本。它内置了始终开启的IntelliSense代码补全、更丰富的语义代码理解和导航以及代码重构支持。

VS Code有能力超越内置定制,通过Visual Studio Marketplace的额外扩展,或者使用Yeoman创建自己的扩展,VS Code的高可扩展性是其设计的一部分。

顶级功能

根据经验/观点,VS Code的前5大功能是:

  1. IntelliSense:正如所知,IntelliSense有助于跟踪正在输入的参数,并只需几个按键就可以添加对属性和方法的调用。尽管IntelliSense是大多数IDE的常见功能,但VS Code支持最新的编程语言。IntelliSense支持包括Sass、LESS、JavaScript、TypeScript和PHP等在内的多种编程语言。这是提高生产力的一个伟大功能。
  2. Peek:在编码时,程序员可能会忘记某个特定函数,Peek功能可以展开选择,显示函数的完整定义以及函数定义的位置。
  3. CLI:程序员可以使用CLI打开特定目录到VS Code,或者直接从编辑器打开当前项目目录到终端或命令提示符。相信知道CLI(命令行界面)是计算机操作系统或应用程序的用户界面,用户通过在指定行上输入命令来响应视觉提示,从系统接收响应,然后输入另一个命令,依此类推。
  4. Git集成:正如所知,Git是一个免费且开源的分布式版本控制系统,旨在以速度和效率处理从小到非常大的项目。VS Code将Git内置在编辑器中。如果正在对Git仓库进行更改,VS Code将在代码编辑器的侧边栏中显示颜色指示器,指示所做的修改位置。
  5. 任务执行器:有许多工具可以自动化构建、打包、测试或部署软件系统的任务。这些工具大多数是从命令行运行的,并自动化软件开发内部循环(编辑、编译、测试和调试)之外的工作。一旦通过Grunt、Gulp或MSBuild设置了相关的配置tasks.json,程序员可以通过命令面板输入Run Task来运行任务运行器。输入Tasks将列出所有相关命令。

众包

“众包”这个词是“人群”和“外包”的组合。这个想法是将工作外包给一群工人。

推动VS Code成功的不仅仅是任何其他东西,而是来自社区的反馈和互动。

今天,有Node.js、Go、C++、PHP和Python等语言的扩展,以及更多的语言、linter和工具。VS Code不仅被开发团队使用,还在像Progressive Insurance这样的公司中被使用,VS Code不仅被开发者使用,还被分析师和数据科学家使用。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485