例外処理を行う!Rubyでbeginを使う方法【初心者向け】
初心者向けにRubyでbeginを使う方法について解説しています。最初にbegin ~ rescue ~ endによる例外処理の仕組みと基本の構文を学び、続いて実際の例を書きながら具体的な活用方法を覚えていきましょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
Rubyでbeginを使う方法について解説します。
そもそもRubyについてよく分からないという方は、Rubyとは何なのか解説した記事を読むとさらに理解が深まります。
なお本記事は、TechAcademyのオンラインブートキャンプRuby講座の内容をもとに紹介しています。
今回は、Rubyに関する内容だね!
どういう内容でしょうか?
beginの使い方について詳しく説明していくね!
お願いします!
beginで行う例外処理とは
Ruby では、ライブラリの内部や Ruby の使い方で何かエラーが発生した場合に、例外処理という方法で、エラーを通知します。例外処理では、エラーが起きた場所で例外オブジェクトを生成し、呼び出し元に返します。
例外オブジェクトは、それを処理しない場合は、順番にさらに上の呼び出し元に返されていき、最終的には ruby プログラムの実行がストップします。
プログラムの実行をストップさせないためには、begin ~ rescue ~ end と呼ばれるブロックを作成して、例外オブジェクトを「捕捉」して適切な処理を行わないといけません。
beginの書き方
begin ~ rescue の間に通常の処理を書き、rescue ~ end の中に、例外発生時の処理を書きます。
begin 通常の処理 rescue エラー発生時の処理 end
rescue には、捕捉する例外の種類を書くことが出来ます。また、複数の rescue を書くことも出来ます。
begin 通常の処理 rescue ArgumentError エラー発生時の処理 rescue StandardError エラー発生時の処理 end
実際に書いてみよう
例外処理は、ユーザの入力などで想定外の入力があった場合などに、エラー処理を一箇所にまとめて書くときに使います。
エラー処理を書くことで、Ruby のエラーをユーザに分かりやすい形に変換することが出来ます。
ソースコード
begin puts "100円を何人で分けますか?数字で入力してください。" num = gets puts "1人あたり: #{100 / num.to_i}" puts "余り: #{100 % num.to_i}" rescue ZeroDivisionError puts "ERROR: 数字を入れてください" end
監修してくれたメンター
吉本 敏洋
フリーランスとして、WEB系ベンチャーでRailsアプリの開発を行っています。 フリーランスとしてRailsの案件に関わるようになって、10年以上になります。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でもRuby on Railsを使ったプログラミングを習得できるオンラインブートキャンプRuby講座を開催しています。
挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。