Visual Studio Code 1.0!

 

本記事は、マイクロソフト本社の Visual Studio Code Blog の記事を抄訳したものです。【元記事】 Visual Studio Code 1.0! 2016/4/14

 

header graphic

このたびマイクロソフトは、Visual Studio Code のバージョン 1.0 をリリースしました。初回リリースは 1 年前でしたが、Visual Studio Code はそれ以来 200 万人の開発者の皆様の環境にインストールされ、現在では月間アクティブ ユーザー数が 50 万人を超えるまでに成長しました。

当初 Visual Studio Code は、最新の Web テクノロジを使用して運用環境レベルの品質のエディターを開発するという実験的な試みとしてスタートしましたが、リッチなコード編集とデバッグ エクスペリエンスに重点を置くことで、主要な開発作業の生産性向上を重視した新たなクロス プラットフォーム開発ツールへと進化しました。Visual Studio Code は、合理化された開発ワークフローの中で業界トップクラスの Visual Studio の機能を使用できるようにするもので、多様なアプリケーションを作成する開発者の皆様の中核的なツールセットとなることが期待されます。

バージョン "1.0" の公開に至るまでのこの数か月間は、機能面以外にもさまざまな取り組みが行われました。たとえば、コミュニティの皆様の協力のもと安定性をさらに向上させるために数百ものバグが修正されたほか、編集エクスペリエンスをさらに向上させるための改良も積極的に行われました。

Visual Studio Code は当初 JavaScript や TypeScript での Web アプリ開発を想定したものでしたが、拡張機能のサポートが追加されてからわずか 6 か月足らずで 1000 以上の拡張機能 (英語) がコミュニティによって作成され、現在ではほぼすべての言語やランタイムがサポートされるようになりました。その結果、今日では個人ユーザー、スタートアップ企業、Fortune 500 企業、さらにこれまでマイクロソフト製のツールを使用したことがなかった方々を含むさまざまな開発者の皆様が、現在採用されているツール チェーンやワークフローに適合した、Go、Python、React Native、C++ といった幅広いテクノロジをサポートするツールを利用して生産性をさらに高められるようになりました。このようなすばらしいエコシステムが構築された今、私たちは自信を持ってこの API を安定版として提供し、今後の互換性を保証することができるようになりました。

私たちは Visual Studio Code 1.0 がすべての開発者にとって優れたエディターとなるように努力してきました。Visual Studio Code 1.0 は全面的にローカライズ可能で、フランス語、ドイツ語、日本語、中国語を含む 9 か国語で提供されます。さらに、Visual Studio Code を最もアクセシビリティに優れた最先端のエディターにするための取り組みにも力を入れています。キーボード操作に完全に対応するほか、目が不自由な方のために画面の音声読み上げ機能やユーザー補助ナビゲーションをサポートしています。

この重要なマイルストーンを達成できたのは、他でもないご協力いただいた皆様のおかげです。オープン開発の開始から 4 か月も経たないうちに、300 件以上のプル リクエスト (英語) に対応することができました。プル リクエストの作成、問題の報告、アイデアへの投票、ツイート、あるいは日常業務での Visual Studio Code の使用など、さまざまな形で携わってくださった皆様一人ひとりに心より感謝申し上げます。

installs graphic

Visual Studio Code の歴史

「ブラウザーに入力していることを感じさせないような高速なコード エディターを開発することは可能か?」

当初「Monaco」と呼ばれていたこのプロジェクトを立ち上げたのは、わずか数年前のことでした。当時はブラウザーへの HTML5 の導入が開始されたばかりで、高速な JavaScript ランタイムの開発競争が本格化しつつある時期でした。

そこで私たちは、「ネイティブ アプリのような操作性を備えたブラウザー ベースのコード エディターを開発することは可能か?」という命題に取り組むことにしました。テキスト編集だけでなく、入力候補一覧、エラーや警告を示す波線、定義への移動など、ソース コード編集においても同等の機能性を実現することを目指したのです。

今振り返ってみると、これに対する答えは「イエス」だったと明言することができます。私たちが開発したエディターは、OneDrive、Visual Studio Team Services、Bing Code Search、Azure など、日々膨大な数のユーザーに利用される要件の厳しいグローバルな Web サイトで使用されているほか、Internet Explorer の F12 ツールとして何億もの Windows デスクトップに提供されています。このエディターこそが、Visual Studio Code の中核を成すものです。

もちろん、エディターを開発するには開発ツールが必要でした。開発者の間では、コードを短期間で改良するには「ドッグフーディング」、つまりお客様と同じようにエディターを自ら使用してみることが効果的であることが知られています。そこで私たちは、ローカルの Node.js ベース サービスを作成し、軽量の開発ツールでファイルやエディターを提供することにしました。このツールは後に Azure Websites の一部としてクラウドで活用されることになります。

しかし、私たちはさらにその先を目指し、あらゆるソース コードに対応し、あらゆる環境にインストールして使用することができるネイティブの開発ツールを開発したいと考えました。さらにこれまでの経験から、単なるエディターではなく、コードのナビゲーション、デバッグ、Git との連携など、開発者が頻繁に行うタスクに役立つ機能にすることが重要だと判断しました。こうして Visual Studio Code が誕生したのです。

Web テクノロジをベースに開発されたため、このツールをネイティブのクロス プラットフォームのシェルでホストすることは簡単でした。私たちは初期の段階から、多数のオープン ソース テクノロジを使用して貢献しようと考えていました。Web およびネイティブの UI と Node.js API を組み合わせた GitHub の Electron シェルもその 1 つです。この結果、わずか数か月後の //Build/ 2015 の場で、Visual Studio Code の最初のプレビューをリリースすることができました。

OS X、Windows、Linux 向けのコード エディターは、拡張性とオープン開発という 2 つの重要な要素が欠けていたにもかかわらず、当初よりたいへん好評でした。

「お客様と同じように Visual Studio Code を使用する」という方針に則り、リッチで安定した API を提供するためには、拡張機能の開発用に公開している同じ API を使用して Visual Studio Code を開発することが最善の策だと判断しました。そして偶然にも、JavaScript と TypeScript の主要な言語サービスは、ディストリビューションにバンドルされた拡張機能だったのです。現在私たちは Visual Studio Code を使用して、Visual Studio Code、その拡張機能、Node.js ベース サービスの開発とデバッグを行っています。つまり、私たちが Visual Studio Code を開発する際に利用している TypeScript のリッチな編集、ナビゲーション、デバッグ エクスペリエンスは、Visual Studio Code の拡張機能の開発にもご利用いただけるのです。そして最初のプレビューのリリースから 6 か月後の Connect(); 2015 では、完全な拡張性モデルを備えた、新しい Visual Studio Marketplace でサポートされる Visual Studio Code のベータ版を発表しました。

同時に、Visual Studio Code のリポジトリ (英語) とマイクロソフトの多数の拡張機能をオープン ソース化し、Visual Studio Code のオープン開発を開始しました。

timeline graphic

"1.0" に向けた取り組み

今日では、私たちが構想段階で思い描いた Visual Studio Code の特長の多くが実現されており、優れた編集/ナビゲーション エクスペリエンス (英語)、効率的なデバッグ機能 (英語)、組み込みの Git のサポート (英語) が備わっています。

Visual Studio Code は、その強力な組み込み機能、直観的な編集/デバッグ エクスペリエンス、パフォーマンスと応答性、幅広い言語とプラットフォームのサポートといった点が開発者の支持を集めています。Visual Studio Code のダウンロード ファイルは 40 MB 未満と小さく、9 つの言語 (英語) (簡体字中国語、繁体字中国語、フランス語、ドイツ語、イタリア語、日本語、韓国語、ロシア語、スペイン語) がサポートされており、数秒でインストールすることができます。また、@zersiax をはじめとする開発者の協力によって目が不自由な方向けのユーザー補助機能 (英語) がサポートされ、現在では Windows でご利用いただくことができます。近日中には OS X と Linux でもサポートされる予定です。

コミュニティ中心の開発

Visual Studio Code の成功には、何よりもコミュニティの皆様のフィードバックやご提案が不可欠でした。当初から私たちは Visual Studio Code のロードマップやビジョンを可能な限り公開することを目指してきました。11 月にはその取り組みをさらに進め、Visual Studio Code をオープン ソース化すると共に、問題の報告、フィードバックの提供、プル リクエストの作成、拡張機能の開発を通じてだれもが Visual Studio Code を改善できるようにしました。

そして、コミュニティの皆様がこれに応えるように膨大な数の拡張機能を作成してくれたことで、Visual Studio Code の活用の幅はさらに広がりました。現在では、Node.js (英語)Go (英語)C++ (英語)PHP (英語)Python (英語)、その他多数の言語や、Lint、ツール向けの拡張機能が提供されています。また、Visual Studio Code を使用しているのは開発者チームだけでなく、Progressive Insurance などの企業ではアナリストやデータ サイエンティストにも活用されています。

コミュニティの皆様からの多大なご支援とご協力により、Visual Studio Code の可能性はかつてないほど大きな広がりをみせています。

今後について

私たちは今回のバージョン 1.0 のリリースに大きな喜びを感じると共に、今後の進化にさらなる期待を寄せています。

もちろん、根本的な取り組みは今後も継続してまいります。パフォーマンス、安定性、アクセシビリティ、互換性はユーザーの皆様にとって重要なだけでなく、私たちにとってもたいへん重要な課題です。UserVoice (英語) に寄せられる皆様からのフィードバックに基づいて生産性を向上する機能の開発に取り組むと共に、パートナーやコミュニティの皆様とも引き続き協力して、さらに多くの言語、プラットフォーム、エクスペリエンスをサポートできるよう努力していきます。そして、コミュニティの皆様のご協力のもと、すべての開発者にとって優れたツールを提供するべく取り組んでまいります。

Visual Studio Code をまだお試しになっていない方は、こちらのページ (英語) からダウンロードして、ぜひご意見をお聞かせください。

ありがとうございました!

Visual Studio Code チーム (@code)