新刊ピックアップ

IDE,本当に活用できてますか? ~進化したVisual Studio 2019のすべて

この記事を読むのに必要な時間:およそ 1 分

そのそもIDEを用いた開発と用いない開発の違い

一般にアプリケーション開発をする上で必要になる機能を挙げると以下のものが該当します。

  • コードエディター
  • コンパイラー
  • リンカー
  • デバッガー

それぞれの役割は表1を参照してください。

表1 アプリケーション開発に必要となる機能

機能概要
コードエディターソースコードなどを記述するためのテキストファイルを編集するツール
コンパイラーソースコードを中間言語に変換したオブジェクトファイルを出力
リンカーコンパイラーから出力されたオブジェクトファイルに必要なライブラリを付加し,実行可能なアプリケーションを生成する機能
デバッガー生成したアプリケーションで発生した不具合の特定やメモリ・値を監視する機能

それぞれ,個別に用意することも可能ですが,近年はこれらすべてをまとめて統合開発環境「IDE」を用いて開発を行うのが一般的です。⁠ただ,まとめただけ?」と疑問に思う方もいるかもしれませんが,各ツールを独立して行ったイメージを図1にIDEで各ツールを連携して開発したイメージを図2に示して,それぞれの違いを説明します。

図1 各ツールを独立して開発したイメージ

図1 各ツールを独立して開発したイメージ

図2 IDEで各ツールを連携して開発したイメージ

図2 IDEで各ツールを連携して開発したイメージ

図1はコードエディター,コンパイラー,リンカー,デバッガーがそれぞれ独立しているため,CUIなどで個別に操作する必要があります。それに対し,図2に示すようにIDEを用いると各機能をそれぞれ実行する必要がなく,機能連携がスムーズに行われるため,効率よく生産性の高い開発を行うことができます。

進化したVisual Studio 2019

先に述べたように,各機能がスムーズに連携されるという効率さがIDEの最大の魅力ですが,近年この効率さがさらに進化しています。ここではIDEの代表格の1つであるVisual Studioの「コードエディター」機能を例に紹介します。

便利なエディター機能

表1に示したように「ソースコードなどを編集するツール」であるコードエディターの中には,置換や検索を行う編集機能が備わっているものもあります。しかしVisual Studioでは,編集機能はもちろん,⁠IntelliSense」⁠IntelliCode」と呼ばれる入力予測機能や「NuGet」と呼ばれるパッケージ管理機能などもあります。

入力予測機能① ~IntelliSense

入力予測機能で馴染みがあるのがスマートフォンなどの文字入力を思い出すかと思います。IntelliSenseも同様,文字を入力すると,入力した文字に近いものを,過去に入力した変数名やプロパティ名,メソッド名などから候補として表示してくれます。そして,その候補から選択し,入力することができます。

入力予測機能② ~IntelliCode

IntelliCodeはVisual Studio 2019から新しく搭載された入力予測機能です。IntelliSenseなど従来の入力予測機能と違い,単に入力した文字に近い入力候補を提案するだけでなく,利用頻度やコードの前後の流れを考慮して入力候補を提案してくれる,いわばAI機能を搭載した入力予測機能です。

これにより,開発者はよりスムーズにコーディングが行えるようになります。

パッケージ管理機能 ~「NuGet」

最近の開発では他の開発者が作成したコードを全世界に公開し,皆で利用することでより生産性をあげようという流れがあります。皆が利用できるようにまとめたものが「パッケージ」と呼ばれます。このパッケージにはコンパイルされたコード(DLL)に加えて,このパッケージが使用されるプロジェクトに必要であるその他のコンテンツも含まれた形のため,パッケージを活用することで生産性をよりあげることが可能になります。

Visual Studio 2019には,上記に挙げたコードエディター以外にもGUIツールでビジュアル的に開発できるデザイナーエディターさらには,表1で紹介したコードエディター以外の「コンパイラー」⁠リンカー」⁠デバッガー」などの機能もIDEならではの魅力的な機能が多々あります。

Visual Studioパーフェクトガイドは,そんなVisual Studio 2019の魅力を1冊にまとめた書籍です。