Android Studioでソースコードを読むのに覚えておくと便利なショートカット
最近になってようやくサンプルなどのソースコードを読むようになったのですが、「あ、こんな便利な機能あったのね」というのを紹介します。
ショートカットキーはMacのものを書いてます。メニューにショートカットキーも表示してくれているので、Windowsの方はそこで調べてください。
調べたい変数やメソッドにカーソルを合わせてOpt+F7
Edit > Find > Find Usages
変数やメソッドがどこでどう使われているか調べるのに使います。今まで右クリック→Find Usagesで表示させてました。もしくはIdeaVim使っているので「/文字列」で検索してました。
メンバ変数(フィールド変数)だとValue readでどこで参照されているかが、Value writeでどこで変更されているかが表示されます。
メソッドだと、どこで呼ばれているかが表示されます。
プライベートフィールドに対して特に効果を発揮する機能です。
ちなみにFind Usagesで使われ方を表示した後は、Cmd+Shift+↓(↑)
で次に出てくるところに飛んでくれます。さらにいうとCmdとOptを押し間違えると、表示させてる行の位置が入れ替わったりするので注意してくださいね。
Cmd+[
Navigate > Back
日本語キーボードだと[ではなく@になります。
Find Usagesなどを使ってジャンプした場合に、ジャンプ前に読んでた場所に戻ってくれます。今まで「前読んでたところどこだ・・・」とイライラしながら探してました。
戻りすぎたらCmd+]
(日本語キーボードなら[)で1つ先へ飛びます。
この機能を使わずしてソースコードは読めない。
とりあえずこの2つの存在を知っているだけで格段にソースコードを読む辛さが緩和されます。
Cmd+b
もしくはCmd
押しながらクリック
Navigate > Declaration
私はDeclarationの意味をよく分かってないのですが、宣言先に飛ぶってことなんだと思います。
親クラスで定義されてるメソッドを呼んでる時に、そのソースコードに飛ぶときに使ってます。例えば何気なく使ってるfindViewById()
はいったい何やってんだって調べたりする感じです。Cmdキー押しながらクリックするだけなんで、ショートカットキー覚えてなくても行けそうな気はします。
Android Support Libraryのクラスだとソースコードまで付属してないのでそのままでは見れないんですけどね(見れないわけではないようです)。
Android標準のクラスならソースコードもインストールしてあれば確認することができます。Android SDK ManagerでSources for Android SDKをインストールしておく必要がありますが、開発する上ではないと困ると思うのでインストールしておいた方がいいでしょう。
Javadocを確認したいメソッド等にカーソルを合わせてF1
(Shift+F1
でブラウザで見れます)
View > Quick Documentation
私の場合、読む時より書くときによくお世話になってる機能です。
ソースコードを読むのはものすごく勉強になるのに、今まで避けてきていたのはひとえに読むのが大変だったからでした。こういった便利な機能を知らなければ、そりゃ億劫になるのも当然と言えます。
使いこなしている人にとっては当然の知識かもしれませんが、初心者にとってはこんなこともわからないことなのです・・・。
調べてみるともっと便利な機能があるのかもしれません。「こんな便利な機能もあるよ」というのがあったら教えていただけると助かります。