分12345はじめに前回に引き続いて実行構成の話です。今回はデバッガについて説明します。とあるテスト駆動開発(TDD)の流派ではデバッガを使うことは死を意味すると言いますが,IDEを使っていてデバッガを使わないのは,IDEの機能の1/3くらいを捨てているようなものだと思っています。Studioではどうなのか?という視点で進めていきます。Eclipseデバッガを活用するための31のTips@kompiroさん,ありがとうございました。Studioのデバッガの基本的な使い方を紹介します。Application」の実行構成を例に進めていきます。デバッガを使うにはまずはブレイクポイントを設定します。Javaのソースコードをエディタで開き,ブレイクポイントを設定したい行の左端(ガーターエリア)をクリックします。一度クリックするとブレイクポイントを解除します。Androidアプリケーションは実行すると所定のアクティビティで待機状態になるため,デバッガ実行後にブレイクポイントを設定しても間に合います。Androidテストのように実行したら待機せずに順次実行してしまう場合は,デバッガ実行まえにブレイクポイントを設定しておきましょう。実行構成をデバッガモードで実行してアプリケーションのデバッグを行います。Debug」を実行します。通常実行時と異なり「Debugツールウィンドウ」が表示されます。このツールウィンドウがいわゆるデバッガになります。指定したブレイクポイントまでプログラムが実行されると「Debugツールウィンドウ」にその情報が表示されます。Debugツールウィンドウについて「Debugツールウィンドウ」は図2のようなペイン(タブ)で構成されています。前回紹介した「Androidツールウィンドウ」のようにレイアウトを自由に変更することができます。Layout」アイコンを押すとレイアウトが復元されるので,臆せずいろいろ試してみてください。実行中のオブジェクトの値をみるブレイクポイントで停止すると「Variablesペイン」にその場で参照可能なオブジェクトが一覧表示されます。「Variablesペイン」から特定のオブジェクトを選択し,コンテキストメニューから"Inspect"を実行すると,そのオブジェクトのみを切り出した「Inspectポップアップ」が表示されます。一時的に特定のオブジェクトを掘り下げて覗いてみたい時に便利です。「Inspectポップアップ」また,エディタ上で「Variablesタブ」にリストアップされているオブジェクト(変数や引数)に対応する対象にマウスカーソルをあてると図5のように,オブジェクトの値がポップアップされます。エディタ上で変数の内容を参照するさらに,そのポップアップをクリックすると図6のようなインスペクション画面に切り替わります。使いようによっては,先ほどの「Inspectポップアップ」より便利です。ポップアップをクリックするとインスペクション画面に切り替わる「Variablesペイン」には主に変数や引数がリストアップされます。それらオブジェクトの特定のメンバや,オブジェクトを組み合わせた式の結果を参照したい場合は「ウォッチ式」を用います。Watches"を実行すると,オブジェクトや式が「Watchesペイン」に表示されます。※「ウォッチ式」と呼ぶだけあって「Watchesタブ」には式が書けます。「Watchesペイン」上の「+」アイコンからもウォッチ式を追加することができます。この場合「Watchesペイン」上に空欄ができあがりますので,そこに任意のウォッチ式を記述します。「Watchesペイン」から直接ウォッチ式を記述する意外かも知れませんが,ウォッチ式はコード補完が可能です。「+」アイコンによる新規入力時だけではなく,既存のウォッチ式の編集時もコード補完ができます。先ほど紹介したエディタ上でのオブジェクトの値参照の延長線上にある操作なのですが,ALT(opt)キーを押しながらエディタ上にマウスカーソルを置くと,マウスカーソルの位置に応じて参照可能な領域に下線が引かれます。利用者が望む領域に下線が引かれたなら,それをクリックすると図9のようにインスペクション画面が表示されます(プリミティブ型の場合,ツールチップとして表示されます)。/>マウスカーソルの移動による下線の設定がうまくいかずイライラする場合は,評価したい範囲を選択してからALT(opt)キーをクリックしても良いです。任意の領域を指定してALT+マウスクリックしても良い個人的には自動的にポップアップする方法より,こちらの方が便利だと思っています。この操作のモディファイアキーを他のキーに変更する事はできません。デバッガ著者プロフィール今井勝信(いまいまさのぶ)システムエンジニア。