解説 ASP.NETで学ぶVisual Studio .NETの魅力 第6回 開発効率向上の肝 デバック機能とマクロ機能 山田 祥寛2003/09/17 |
|
Back Issue
|
||||||||||
|
さあ、6回にわたった連載もいよいよ今回が最終回。最後の締めくくりとしては、Visual Studio .NET(VS.NET)が提供するデバッグ/マクロ機能について紹介することにしよう。いずれもVS.NETによる生産性向上には欠かせない機能なので、しっかりと押さえておいてほしい。前5回の連載で扱ったコードを、今一度、これら機能を利用しながら自分で動かしてみるのも理解の一助となるだろう。
開発工程の肝を知る「デバッグ」機能
デバッグというと、開発/設計といったステップに比べ、どうしても後ろ向きの仕事に見えるかもしれない。しかし、その実、開発生産性を左右する重要な要素こそが「デバッグ」の局面であるといっても過言ではないし、困難な開発に携わった人間であればあるほどそのことを知っているはずだ。
堅牢なアプリケーション・システムの開発において、多くのケースで、デバッグ/テストが占める工数はコーディングそれ自体にかかる工数よりも大きい。また、バグの存在しないアプリケーションがほとんどありえない以上、デバッグの作業はアプリケーションの品質を左右する重要なフェーズでもあり、また、デバッグをいかに効率化するかが開発生産性を決定付けるといえよう。
多くのIDE(統合開発環境)がそうであるように、VS.NETでもまた、デバッグを効率化するためのさまざまなしかけが提供されている。ここでは、その中でもASP.NET開発において頻繁に使用すると思われる機能について、概要をご紹介することとしたい。
VS.NETの[デバッグ]メニューの内容 |
VS.NETのデバッグ機能はメニューの[デバッグ]にまとめられている。 |
コンパイル・エラーをリストアップ
ペンディング事項を管理する「タスク」
適当なプログラムを読み込んで、メニューから[デバッグ]−[開始]を選択してみよう。コード中に不具合が含まれる場合には、ここでコンパイル・エラーが発生し、エラー情報の一覧が[タスク]ウィンドウに出力されるはずだ。
[タスク]ウィンドウに表示されたエラー |
コンパイルの過程で発生したエラーとファイル名が一覧表示される。 |
従来のVisual Studioでは、エラー情報が[出力]ウィンドウにコンパイル情報とともに羅列されていたため非常に見にくかったが、VS.NETではタスクに分離されたことで、より見やすくなっている。[タスク一覧]からは、行をダブルクリックするだけで該当の行に自動的にジャンプすることも可能だ。
また、[タスク一覧]には、コンパイラによって自動的に生成されるエラー情報だけではなく、ユーザが自らの積み残しなどをメモしておくこともできる。方法は大きく2つに分けられる。
(1)タスクに任意のコメントを追加
[タスク]ウィンドウの先頭行をクリックし、任意のコメントを追加する。ソース・コードとは独立した単なる覚え書きという位置付けである。
(2)ソース・コードのコメントをタスクに反映させる
[ツール]−[オプション]から[オプション]ダイアログを開き、[環境]−[タスク一覧]を選択してほしい。[コメントトークン]というカテゴリに、以下のようなキーワードの一覧がリストされているはずである。
TODO |
HACK |
UNDONE |
UnresolvedMergeConflict |
コメント・トークンとして用意されているキーワード |
ここで挙げられているキーワードをコメントとしてソース・コードに含めることで、タスク一覧に自動反映させることができる。例えば、以下のようにである。
// TODO 分岐ロジックを設計チームに確認すること |
コメント・トークンは、あらかじめ用意されているキーワードの優先順位を変更できるほか、新たにまったく新しいものを追加することもできる。
これらタスク一覧は、列部分を右クリックし表示されるコンテキスト・メニューから[タスクの表示]や[並べ替え]を選択することで、フィルタリング/ソーティングにも対応しているのがうれしい。例えば、同一ファイルのエラーを修正したいという場合にも、タスク一覧上で対象のタスクのみを表示することができる。
タスク一覧の表示を変更する |
[タスクの表示]、[並べ替え]などを選んでデバッグするエラーを素早く見つけられる。 |
INDEX | ||
ASP.NETで学ぶVisual Studio .NETの魅力 | ||
第6回 開発効率向上の肝 デバック機能とマクロ機能 | ||
1.コンパイル・エラーをリストアップする[タスク]ウィンドウ | ||
2.各ポイントでの状態を確認する「ブレークポイント」 | ||
3.「ステップイン/ステップオーバー/ステップアウト」でステップごとの処理を確認 | ||
4.作業工程をシンプル化するマクロ機能 | ||
「解説:ASP.NETで学ぶVisual Studio .NETの魅力」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|