Node.js Tools 1.0 for Visual Studio


 

本記事は、マイクロソフト本社の The Visual Studio Blog の記事を抄訳したものです。
【元記事】 Node.js Tools 1.0 for Visual StudioNode.js Tools 1.0 for Visual Studio  2015/03/25 10:55 AM

[更新]: ブログの内容を一部更新しました。[更新] タグを挿入していますので、そちらをご確認ください。

Node.js Tools 1.0 for Visual Studio (NTVS) (英語) がリリースされ、ダウンロード (英語) できるようになりました。NTVS は、Visual Studio 2012 および Visual Studio 2013 用の拡張機能で、オープン ソースで無償提供されます。NTVS を利用すると、Visual Studio を Node.js IDE として使用できるようになります。NTVS 1.0 では、Visual Studio Professional およびそれ以上のバージョンのほかに、無料の Visual Studio Community と Visual Studio Express for Web エディションもサポートされています。

Node.js (英語) は、JavaScript を使用して高速かつスケーラブルなアプリケーションを構築するためのプラットフォームです。サーバーから Internet of Things デバイス、デスクトップ アプリケーション、さらには今後新たに現れるデバイスまで、あらゆるものに対応します。今回 Node.js が Visual Studio でサポートされた (英語)、ことで、Node.js アプリケーションの開発がこれまで以上に簡単になりました。

 

Node.js が Visual Studio で使用可能に

マイクロソフトは 1 年以上かけて NTVS の開発を進めてきました。今回のリリースには、主に下記の機能が含まれます。

  • リッチな編集エクスペリエンス
  • コード補完機能 (IntelliSense)
  • インタラクティブ ウィンドウ (REPL)
  • npm の統合
  • 高度なデバッグとプロファイリング
  • テスト エクスプローラーの統合
  • 他の複数の Visual Studio 機能との完全な統合
  • Node.js、io.js (英語)、JavaScript、TypeScript、HTML、CSS、JSON のサポート

 

編集機能と IntelliSense

NTVS では、構文の強調表示、コードの折りたたみ (かっこの補完)、オートフォーマット、定義への移動 (F12)、ファイル内検索、コード補完など、ユーザーが求めるさまざまな機能がサポートされています。

「コード補完機能は、動的に型付けされる言語に対応していますか?」その答えは「イエス」です。NTVS はプロジェクトを静的に分析し、Node.js のコードやパッケージに適した文法的に正しいコードを補完します。

clip_image001[4]

 

インタラクティブ ウィンドウ (REPL)

初めて使用される方にとって、REPL は非常に便利な機能です。REPL では、コードを入力するとその結果がインラインで表示されます。このため、コードをテストしたり新しいパッケージを試したりする時間を大幅に節約できます。また、Visual Studio のエクスペリエンスが随所に散りばめられており、エディターで作業する場合と同様の構文の強調表示や補完をフルに利用することができます。

clip_image002[4]

 

npm の統合

ソリューション エクスプローラーで npm の依存関係を把握して管理したり、リッチな UI を使用して npm レジストリから依存関係の検索やインストールを行ったり、インタラクティブ ウィンドウやコマンド プロンプトに移動したりできるようになりました。エンドツーエンドの npm の統合により、依存関係に関連する作業が容易になります。また、いずれかの依存関係に不備が発生した場合に NTVS が警告を通知する機能もあります。

clip_image003[4]

 

高度なデバッグとプロファイリング

驚くことに、Node.js のコードをデバッグする際に print-line ステートメントを使用しているユーザーが数多くいます。NTVS なら、ブレークポイントを設定して 1 ステップずつコードを確認することができ、例外が自動で通知される機能もあります。さらに、条件付きのブレークポイント、トレースポイント、ヒットカウント、エディット コンティニュといった高度な機能も使用できます。

clip_image004[4]

「でも、多くの問題は自社の運用サーバー上で発生しています。Windows や Azure にデプロイしない場合、どうすればよいですか?」

Windows と Azure のチーム メンバーが聞いたらがっかりしそうな話ですが、仕方ありません…。気を取り直して、NTVS では、Windows、Linux、MacOSといった各種 OS に対するリモート デバッグをサポートしているため、問題ありません。

「私が作成したコードの速度が遅すぎます。どうすればよいですか?」

NTVS では、V8 プロファイリング API と Visual Studio のレポート機能を活用して、プログラムのどの部分で実行速度が遅いかを把握し、パフォーマンスに関する問題の原因を迅速に見つけることができます。

clip_image005[4]

 

単体テスト

Visual Studio のテスト エクスプローラーと統合されたことにより、コマンドプロンプトに移動しなくても単体テストの作成、実行、デバッグ、フィルタリングが可能になりました。Mocha を使用するか、単純に Visual Studio を拡張するだけで、お好みの単体テストフレームワークで作業を進めることができます。

clip_image006[4]

 

その他のメリット

ここで説明した以外にも、次のことが可能です。

  • プロジェクト テンプレートを使用して、短時間でセットアップを完了させ、実行できます。
  • この記事で説明した機能はすべて TypeScript (英語) にも適用されます。
  • Git と TFS の統合により、コマンド ラインが不要になります。
  • Azure との統合により、Web アプリケーションの作成からデプロイまでを 5 分以内で完了できます。

また、NTVS の機能を補完する Visual Studio の主要な拡張機能もご確認ください。

 

Node.js Tools for Visual Studio の使用を開始するには

Visual Studio で Node.js アプリケーションの開発を行うには、まず Node.js Tools for Visual Studio (英語) をダウンロードしてください。Node.js は Azure と Azure サービスで完全にサポートされているので、アプリケーションのデプロイと監視を行う準備が完了したらこれを活用できます。Visual Studio と Azure を組み合わせると、開発ライフサイクル全体で優れたエクスペリエンスを利用することができます。

 

GitHub に移行

[2015 4月更新]: 私たちは常にお客様の声に耳を傾けています。その結果、Node.js Tools for Visual Studio を GitHub に移行することにしました (英語)。Node.js と JavaScript のコミュニティが GitHub にあるので、この移行は自然なことだったかもしれません。GitHub の活発なコミュニティの一員となり、皆様と協力できることをとても楽しみにしています。途中、多少もたつくこともあるかもしれませんが、そこはどうかご容赦いただれば幸いです。

 

ご質問、ご意見、ご要望をお寄せください

NTVS は無料のオープン ソース プロジェクトであり、始動時からコミュニティの皆様と協力して開発を進めてきました。問題の報告や機能のご要望はこちら (英語) へお願いいたします。また、フォーラム (英語)Twitter への投稿もお待ちしています。特にプル リクエスト (英語) の形でフィードバックをいただけますと幸いです。

ご協力くださっている皆様に心から感謝いたします。皆様と協力して開発を進められることを大変光栄に思っています。

今回のリリースは始まりにすぎません。これからの進化にもどうぞご期待ください。

image

Sara Itani (@mousetraps) (Node.js Tools for Visual Studio 担当ソフトウェア エンジニア)

Sara Itani は Node.js Tools for Visual Studio の開発者です。当初は Node.js の有用性に懐疑的でしたが、その多様な可能性に気付いてからは、Visual Studio の機能を Node.js コミュニティを通じて積極的に世界中に広めています。今では彼女自身も、JavaScript のエキスパートがどんどん増えることを願っています。

Comments (0)

Skip to main content