できるRubyプログラマになるためのデバッグ手法5選

できるRubyプログラマになるためのデバッグ手法5選
貝原 輝昌
書いた人 貝原 輝昌

こんにちは!Webコーダー・プログラマーの貝原(@touhicomu)です。

今日はRubyでデバッグを行う方法について解説したいと思います。

Rubyはコマンドラインでデバッグできたり、IDEでデバッグできたり、デバッグ環境が充実しています。

そうなると、

  • Rubyでどうやってデバッグするの?
  • Rubyのコマンドラインのデバッガpryを使いたい!
  • RubyをIDEでデバッグする方法を知りたい!
  • Rubyでlogを出力したい!

と思うのもうなづけます。

そこで!今日は、

  • Rubyのpry-byebugでデバッグする方法
  • RubyをIDEでデバッグする方法
  • Rubyでlogを出力する方法

について解説したいと思います。

それでは、行ってみましょう!

Rubyのpry-debugでデバッグ実行する方法

Rubyのコマンドライン上でのデバッガとして、pry-byebugがあります。
コマンドライン上でデバッグモードになり、そこからデバッグが可能です。

pry-byebugは、コマンドラインから手軽に起動できます。
また、Rubyのソースコードにpry-byebugのブレークポイントを挿入して実行すると自動的にpry-byebugを起動できます。

この手軽さと、充実したデバッグ機能のため、pry-byebugが一番よく使われるRubyのデバッガです。

できるRubyプログラマになるためには、pry-byebugは必須の技術になってきます。

pry-byebugはブレークポイント、ステップ実行、変数ウォッチ、スタックトレースなどの機能を備えています。

全てがCLIでの操作でデバッグが完結します。またTABキーを押すことによりデバッグ用コマンドを補完する機能もあり、使い勝手も良いです。

pry-byebugについては、下記記事をご参照ください。

RubyをIDEでデバッグする方法

Eclipseでデバッグする方法

Eclipseとは、IBMが制作しその後オープンソースとして公開した、Javaで作られた汎用IDEです。

ブレークポイント、ステップ実行、変数ウォッチ、スタックトレースなどの機能はもちろん使えます。

EclipseはRubyにも対応しており、これを使うとIDEを使ってRubyをデバッグできます。

GUIでデバッグできるため、大変重宝します。

参考サイト:
WindowsでEclipse+Ruby | FILES=0

VSCodeでデバッグする方法

VSCodeとは、MicrosoftがWindows/Mac/Linux向けに提供しているフリーの高機能エディタです。

起動も軽く、拡張機能も方法で、色々な言語に対応しています。またデバッグにも対応しています。

Eclipseと同じく、ブレークポイント、ステップ実行、変数ウォッチ、スタックトレースなどの機能を備えています。

VSCodeもRuby拡張機能を追加インストールすることで、RubyのデバッグがGUIで可能になります。

参考サイト:
Visual Studio CodeによるRubyのデバッグ | Developers.IO

Emacsでデバッグする方法

Emacsとは、古くからUNIX/Linux向けに提供されていたフリーの高機能エディタです。

現在は、Max/Linux/Windows向けに提供されています。

もともとコマンドライン上で使用することが多かったエディタで、Unixの思想を受け継いでいるため、若干の癖がありますが、機能は豊富です。

EmacsはRubyのデバッグにも対応しています。

Emacsでも、ブレークポイント、ステップ実行、変数ウォッチ、スタックトレースなどの機能を備えています。

参考サイト:
Emacsでrubydbを利用してステップ実行する | Futurismo

Rubyでlogを出力する方法

デバッガで、一行一行ステップ実行して、変数をウォッチして確認していくとデバッグも進みます。

しかし、logとして動作中のプログラムの変数や状態を全て出力し、後からログを見て間違いを調査するという方法も非常に有効です。

また、本番系でもテスト系でも、logを取ることで、プロダクトのエラー状態を把握できますので、稼働中に障害が起こった際も原因追及がしやすいです。

logに関しては以下のページを参考にされてください。

まとめ

いかがでしたでしょうか。

Rubyのデバッグは、コマンドライン上のpry-byebugでも、Eclipse/VSCode/EmacsなどのIDE上でも可能でした。

おのおの、ブレークポイント、ステップ実行、変数ウォッチ、スタックトレースなどの機能を備えていました。

これらの機能はデバッグに必須の機能です。
ぜひ、使いこなされてください。

また、logを出力することでデバッグする方法もありました。
log出力は、通常のデバッグ上でも、本番系の運用上でも重宝する方法ですので、この機会に、ぜひ覚えてみてください。

Rubyのデバッグの方法について忘れてしまったら、またこのページを読み返してみてください!

Rubyカリキュラム無料公開中!
この記事はRuby入門完全攻略ガイド【基礎学習/アプリ開発/仕事獲得】の一部になります。このカリキュラムは、プログラミング入門者が、基礎学習からアプリ開発、さらには仕事獲得まで体系的に学べる内容となっています。

Ruby学習に必要な情報を一つにまとめていますので効率よくRubyを学ぶことが出来ます。この機会に是非活用していただければと思います。

Rubyを最短で習得したい方へ
近年では様々なWEBサービスが流通するようになりました。

WEBサービスの普及が進むにつれて、それらを素早く開発するのに長けたRubyの人気は今後さらに増し、Rubyエンジニアの需要も自ずと増えることは間違いなしでしょう。

元々ITリテラシーの高い方や他言語を習得している方であれば、独学でRubyを習得することが可能です。

ただし、プログラミング学習をしている方の多くは

「自分に合った教材が見つけられずに挫折してしまった」
「勉強のための勉強になってしまい、ゴールが見えない」
「情報が少なくどう調べればいいかわからない」
「エラーを解決するのに何日もかかってしまう」
このような悩みを抱えたまま挫折してしまうのが現実となっています。

  • もう挫折したくない
  • 本業と両立しながら、好きな時間で自分のペースで勉強を続けていきたい
  • 自分だけのカリキュラムで効率的に勉強したい
  • WEBアプリケーション開発までしっかりサポートして欲しい
そんな方はお気軽に侍エンジニア塾までご相談ください。

お一人お一人に専属のインストラクターがつくので、初心者の方がつまづきがちな、「CookPad」、「Wantedly」、「食べログ」のようなWEBアプリケーション開発方法もスムーズに学習することできます。

実際にオリジナルWEBアプリを開発し、成果物として認められて仕事獲得に成功した塾生は数多くいます。

このように、オリジナルアプリ開発から仕事獲得まで徹底的にサポートすることでプログラミング初心者の方でも安心して基礎学習に取り組むことができます。

まずは『無料体験レッスン』で、弊社のコンサルタントと一緒にあなた専用の学習方法やカリキュラムを考えてみませんか?

Rubyならではの学習方法や、現役フリーランスRubyエンジニアから貴重なアドバイスを受けることができます。

詳しくは下の画像から弊社サービス内容をご確認ください。

ruby_a2

プログラミング学習者必見

専属講師に質問し放題、レッスンし放題、最短1ヶ月でフリーランスエンジニア
プログラミング学習カリキュラム無料公開中
Ruby学習カリキュラム無料公開中
 1記事最大11,000円!テックライター募集


LINEで送る
Pocket

この記事が気に入ったら
いいね!をしてフォローしよう

最新情報をお届けします

書いた人

貝原 輝昌

貝原 輝昌

こんにちは!貝原(@touhicomu)と申します。
現在は、Web業界のフリーランスとして、主にPHP/WordPress/BuddyPress/VPSサーバー構築などの業務を受注しています。
現住所は、日本の西海岸、長崎県は波佐見町です。田舎ライフです。^^
地元の観光団体「笑楽井石」にボランティアでほたる撮影会やそば塾などのスタッフとして参加させて頂いています。
以下の活動も行っています。
 ・笑楽井石のブログ
 ・エクセル関数を日本語化するソフト
 ・エクセルVBAを日本語で記述するソフト