0Pricing
Ruby Academy · レッスン

beginとrescueによるエラー処理

例外処理でエラーを捕捉・処理し、クラッシュを防ぎます

「beginとrescueによるエラー処理」はCoddyKit上の無料Ruby Academyレッスンです。 これはレッスン1/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはRuby Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Ruby Academyコースには全3レッスンが含まれています。

beginとrescueによるエラー処理

beginとrescueによるエラー処理

プログラミングではエラーを避けられませんが、Rubyにはエラーを適切に処理する仕組みがあります。

このレッスンでは、beginとrescueを使用して例外を捕捉し、処理する方法を学びます。

beginとrescueによるエラー処理 — イラスト1

beginとrescueの使用

beginとrescueの使用

beginとrescueを使用して、エラーを捕捉し、処理します。

begin
  puts 10 / 0
rescue ZeroDivisionError
  puts 'Cannot divide by zero!'
end

複数のエラー種別の処理

複数のエラー種別の処理

複数のrescueブロックを使用して、異なるエラー種別を捕捉できます。

begin
  num = Integer('hello')
rescue ZeroDivisionError
  puts 'Cannot divide by zero!'
rescue ArgumentError
  puts 'Invalid number format!'
end

例外オブジェクトへのアクセス

例外オブジェクトへのアクセス

rescue => eを使用して、例外オブジェクトにアクセスします。

begin
  puts 10 / 0
rescue ZeroDivisionError => e
  puts "Error: #{e.message}"
end

ensureの使用

ensureの使用

ensureブロックは、例外が発生したかどうかにかかわらず、必ず実行されます。

begin
  puts 10 / 0
rescue ZeroDivisionError
  puts 'Cannot divide by zero!'
ensure
  puts 'This code runs no matter what.'
end

retryの使用

retryの使用

retryキーワードは、beginブロックを先頭から再実行します。

attempt = 0
begin
  attempt += 1
  puts 10 / 0
rescue ZeroDivisionError
  puts 'Attempting again...'
  retry if attempt < 2
end

エラーのログ記録

エラーのログ記録

エラーをユーザーに表示する代わりに、ファイルに記録します。

begin
  puts 10 / 0
rescue ZeroDivisionError => e
  File.open('error.log', 'a') { |f| f.puts e.message }
end

カスタムエラーメッセージの表示

カスタムエラーメッセージの表示

生の例外情報ではなく、ユーザーにわかりやすいエラーメッセージを表示します。

begin
  num = Integer('hello')
rescue ArgumentError
  puts 'Oops! That was not a valid number.'
end

おめでとうございます

おめでとうございます

beginとrescueを使用してエラーを処理する方法を学びました。

次は、例外を発生させてカスタマイズする方法について学びます。

beginとrescueによるエラー処理 — イラスト10

よくある質問

「beginとrescueによるエラー処理」レッスンは無料ですか?

はい。「beginとrescueによるエラー処理」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Ruby Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Ruby Academyコースには全3レッスンが含まれています。

「beginとrescueによるエラー処理」で何を学びますか?

例外処理でエラーを捕捉・処理し、クラッシュを防ぎます ブラウザで直接実行するハンズオンコードでRuby Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Ruby Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのRuby Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/3です。

「beginとrescueによるエラー処理」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このRuby Academyレッスンでコードを書いて実行できますか?

はい。すべてのRuby Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. beginとrescueによるエラー処理
  2. 例外の発生とカスタマイズ
  3. デバッグの手法
← Ruby Academyに戻る