post Image
print()やNSLogを書かずにconsoleにメッセージを出力する方法

はじめに

 デバッグ時に変数の中身を確認するなどよくprint()NSLog()を使っていましたが、大量に書くことによってコードがぐちゃぐちゃになってしまったり、あとで消し忘れてしまうことがよくありました。

 どうやらBreakpointの設定によって起動したアプリを一時させることなく、表示したいものをconsoleに流し込める方法を知ったのでここに書きます。

手順

  1. Consoleにメッセージを出したいところの行にBreakpointを置きます。
  2. Breakpointにおいて右クリックし、Edit Breakpointを選びます。
    スクリーンショット 2017-03-10 17.52.06.png

  3. 次のように設定します。

    1. Actionの欄でLog Messageを選びます。
    2. text fieldに出力したい文字列を入力します。
    3. Log message to consoleを選択します。
    4. アプリをstopさせないためにAutomatically continue after evaluating actionsにチェックします。

スクリーンショット 2017-03-10 17.53.58.png

このような文字列が結果として表示されます。

スクリーンショット 2017-03-10 17.54.46.png

  • %BはBreakpointが置かれているメソッド
  • %HはそのBreakpointを通った回数

動的な値をLogに出力

しかし、この方法では、静的な値しか表示できません。
変数を表示したい場合などでは大変不便です。

そのような時は次のように設定します。
1. Actionの欄でDebugger Commandを選びます。
2. text fieldにexpressionキーワードを入れてからprint()NSLog()が後に続く形で書きます。
※右にある+をクリックすることで複数のアクションを追加可能です。
スクリーンショット 2017-03-10 18.18.10.png

結果はこうなります。
スクリーンショット 2017-03-10 18.24.56.png

動的な値が表示されていますね。

まとめ

今回の方法は逆に面倒くさく感じるといる方もいるかもしれません。
しかし、print()NSLog()の消し忘れやコードの見通しを考えると作業効率を上げてくれると考えられます。

まだまだXcodeには知らないでいると損する機能があって、Xcodeのポテンシャルを発揮できていないような気がします。
また何か発見できればシェアできればと思います。


『 Swift 』Article List
Category List

Eye Catch Image
Read More

Androidに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

AWSに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Bitcoinに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

CentOSに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

dockerに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

GitHubに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Goに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Javaに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

JavaScriptに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Laravelに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Pythonに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Rubyに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Scalaに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Swiftに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Unityに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Vue.jsに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Wordpressに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

機械学習に関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。