Visual Studio Code - Visual Studio Code とは

Visual Studio Code とは

Visual Studio Code (VSCode) は Microsoft が開発したソースコードエディタです。ソースコードはオープンソースで、MIT ライセンスの下でリリースされています。コンパイルされたバイナリはフリーウェアであるため、無料で使用することができます。対応 OS は Windows 7 以降、OS X v10.8 以降、Linux をサポートしています。

Visual Studio Code はカスタマイズ性が高く、テーマ・環境設定の変更や、機能を追加する拡張機能を利用することが可能です。デフォルトの機能としてデバッグ、シンタックスハイライト、インテリジェントなコード補完、スニペット、コードリファクタリングのサポートなどが含まれています。統合開発環境と比較しても遜色のない機能を有していながら高速に動作します。

Visual Studio Code の機能

Visual Studio Code のソースコードエディタの機能は、プログラミング言語ごとにサポートの有無が異なります。ただし、プラグインによって他の言語もサポートできます。

シンタックスハイライト
バッチファイル, C++, Clojure, CoffeeScript, Docker, F#, Go, Jade, Java, Handlebars, INIファイル, Lua, Makefile, Objective-C, Perl, PowerShell, Python, R, Razor, Ruby, Rust, SQL, Visual Basic, XML
スニペット
Groovy, Markdown, PHP, Swift
インテリセンス
CSS, HTML, JavaScript, JSON, LESS, Sass
リファクタリング
C#, TypeScript
デバッグ
  • JavaScript と TypeScript (Node.js)
  • C# と F# (Mono)

Visual Studio Code の機能の多くはメニューやユーザーインタフェースを通して公開されていません。代わりにコマンドパレットや、json 設定ファイルを経由してアクセスすることができます。

また、テキストエディタの基本的な機能として、文書の保存時にコードページを変更したり、改行コードを統一することもできます。対応する括弧の表示、複数カーソル、矩形選択、ブロック単位の選択拡張と折り畳み、Git リポジトリと比較しての変更行の表示など、多くの機能を持ちます。

シンタックスハイライト

シンタックスハイライト (syntax highlighting) とは、テキスト中の一部分をその分類ごとに異なる色やフォントで表示するものです。以下のコードはシンタックスハイライトが有効になっている例です。プログラミング言語における主要なキーワードがハイライトされています。

public class Hello {
  public static void main (String [] args) {
    System.out.println ("Hello, world!");
  }
}
Java の Hello world

シンタックスハイライトより、プログラミング言語やマークアップ言語といった構造化された言語において、その構造や構文上のエラーが視覚的に区別しやすくなるため、ソースコードの記述の補助となります。

スニペット

スニペット (snippet) とは、断片という意味で、再利用可能なソースコード、マシンコード、またはテキストの小さな領域を表すプログラミング用語です。スニペットは、何かの文字をキーにコード一式を登録しておいて、使い回しできる機能です。例えば、HTML 全体のフォーマットを毎回打ち込むのが面倒である場合、html を打ち込むと以下のコードに変換できるようスニペットに登録することができます。

<!DOCTYPE html>
<html lang=ja>
  <head>
    <title> ... </title>
    <meta charset="UTF-8">
  </head>

  <body>
    <h1> ... </h1>
  </body>
</html>
スニペット

スニペットは単語登録のようなものです。何度も同じプログラムを打ち込む労力を削減するために、あらかじめスニペットに単語 (プログラムの断片) を登録しておけば、効率的にコードを組むことができます。

スニペット
スニペット (image credits : code.visualstudio.com)

インテリセンス

インテリセンス (IntelliSense) は、コードの自動補完システムです。インテリセンスはプログラマが入力中のシンボル名を補完するだけでなく、変数名や関数名の曖昧性の解消に役立ちます。

インテリセンスは、数多くの名前を覚えてキーワードを入力する必要性を減らすことによってソフトウェアの開発を効率化します。Web ブラウザなどの、文字を入力中に連なる字句を推測して、優位な候補を提示する「入力補完 (オートコンプリート) 」の機能と似ています。

インテリセンス
インテリセンス (image credits : code.visualstudio.com)

リファクタリング

リファクタリング (refactoring) は、プログラムの外部から見た動作を変えずにソースコードの内部構造を整理することです。例えば Visual Studio Code では、ファイルを跨いだシンボル名の一括変更をサポートしています。

デバッグ

デバッグ(debug)は、プログラムのバグを発見、および修正し、動作を仕様通りにすることです。例えば Visual Studio Code では、プログラムの実行について観測、停止、再開、およびメモリ中の値の変更などが可能です。

関連記事