Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

デバッガでデバッグしない

第45回 Ruby/Rails勉強会@関西で発表した内容です。

  • Login to see the comments

  • Be the first to like this

デバッガでデバッグしない

  1. 1. デバッガでデバッグしない よしだあつし
  2. 2. じこしょぉかい なまえ: よしだあつし ねんれい: あらさー おしごと: なにそれおいしいの? るびーれき: わかんない すきなたべもの: かれーらいす ついったー: @yalab
  3. 3. デバッガ
  4. 4.    ( ・∀・)  | | ガッ   と    )   | |     Y /ノ   人      / )  <  >__Λ∩    _/し' //. V`ш´)/ ←>>デバ   (_フ彡       /
  5. 5. デバッガとは? ● デバッガとは、デバッグを支援するプログラ ムのこと。対話的に利用者がプログラムを動 作させたり、プログラムが使っている変数等 を表示させる機能がある。近年では統合開発 環境に含まれていることが多い。また、ICE などでは、ハードウェアと連携して動作す る。(http://ja.wikipedia.org/wiki/ %E3%83%87%E3%83%90%E3%83%83%E3%82%AC)
  6. 6. よくわかりません
  7. 7. デバッガ? ソフトウェアを少しずつ(1行ずつとか) 実行して動作を確認できるツールが デバッガです
  8. 8. デバッガで何ができるか ● ブレークポイント ● ステップ実行 ● 値の確認 ● etc...
  9. 9. デバッガの解説おわり
  10. 10. ここで突然質問です
  11. 11. プログラマに必要なモノとは何で しょうか?
  12. 12. A. 情熱
  13. 13. そんなことはどうでもいい。
  14. 14. プログラマに必要な技能は何で しょう?
  15. 15. コードが読めること
  16. 16. デバッガをコードリーディングの ツール(動的解析)として使用
  17. 17. Rubyのデバッガ ● debug.rb(標準添付、rubyで書かれている) ● ruby-debug(gem、Cで書かれている)
  18. 18. Rubyのデバッガ ● ● ruby-debug(gem、Cで書かれている)
  19. 19. インストール $ sudo gem install ruby-debug19 --with- ruby-include=/path/to/ruby/src
  20. 20. 実演 ● active_recordのcreated_atってどうやって 定義されてるの? ● open-uriってどうなってるの?
  21. 21. 今回使うコマンド ● help: ヘルプを表示 ● b(break): ブレークポイントを設置 ● l(list): 現在実行しているソースを表示 ● bt(backtrace): バックトレースを表示 ● up: フレームを一つ登る ● down: フレームを一つ降る ● p [var]: 変数の中身を表示 ● c(continue): 次のブレークポイントまで進める ● s(step): メソッドの中に入って実行する
  22. 22. サンプルプログラム わりと長くなったので省略 http://jp.rubyist.net/? c=plugin;plugin=attach_download;p=KansaiWo rkshop45;file_name=active_record_read.rb
  23. 23. サンプルプログラム require 'open-uri' open "http://www.google.com" do |f| puts f.read end #http://jp.rubyist.net/? c=plugin;plugin=attach_download;p=Kansai Workshop45;file_name=open_google.rb
  24. 24. まとめ
  25. 25. コードを読みましょう
  26. 26. コードを読む補助に デバッガは便利です
  27. 27. ご清聴ありがとうございました。

×