0Pricing
Ruby Academy · Lekcja

Obsługa błędów za pomocą begin i rescue

Proszę zapobiegać awariom, przechwytując i obsługując błędy za pomocą wyjątków.

Obsługa błędów za pomocą begin i rescue to bezpłatna lekcja Ruby Academy na CoddyKit. To lekcja 1 z 3. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Ruby Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Ruby Academy zawiera 3 lekcji w sumie.

Obsługa błędów za pomocą begin i rescue

Obsługa błędów za pomocą begin i rescue

Błędy są nieuniknione w programowaniu, ale Ruby udostępnia mechanizmy pozwalające obsługiwać je w kontrolowany sposób.

W tej lekcji nauczysz się używać begin i rescue do przechwytywania i obsługi wyjątków.

Obsługa błędów za pomocą begin i rescue — ilustracja 1

Korzystanie z begin i rescue

Korzystanie z begin i rescue

Użyj begin i rescue, aby przechwytywać i obsługiwać błędy.

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

Obsługa wielu typów błędów

Obsługa wielu typów błędów

Różne typy błędów można przechwytywać za pomocą wielu bloków rescue.

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

Uzyskiwanie dostępu do obiektu wyjątku

Uzyskiwanie dostępu do obiektu wyjątku

Użyj rescue => e, aby uzyskać dostęp do obiektu wyjątku.

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

Korzystanie z ensure

Korzystanie z ensure

Blok ensure jest zawsze wykonywany, niezależnie od tego, czy wystąpił wyjątek.

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

Korzystanie z retry

Korzystanie z retry

Słowo kluczowe retry ponownie uruchamia blok begin od początku.

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

Rejestrowanie błędów

Rejestrowanie błędów

Rejestruj błędy w pliku zamiast wyświetlać je użytkownikowi.

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

Wyświetlanie niestandardowych komunikatów o błędach

Wyświetlanie niestandardowych komunikatów o błędach

Udostępniaj przyjazne dla użytkownika komunikaty o błędach zamiast surowych wyjątków.

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

Gratulacje!

Gratulacje!

Nauczyłeś się obsługiwać błędy za pomocą begin i rescue.

Następnie poznasz sposób zgłaszania i dostosowywania wyjątków.

Obsługa błędów za pomocą begin i rescue — ilustracja 10

Często zadawane pytania

Czy lekcja „Obsługa błędów za pomocą begin i rescue” jest bezpłatna?

Tak — pełny tekst „Obsługa błędów za pomocą begin i rescue” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Ruby Academy, przejdź na CoddyKit PRO. Kurs Ruby Academy zawiera 3 lekcji w sumie.

Co nauczysz się w „Obsługa błędów za pomocą begin i rescue”?

Proszę zapobiegać awariom, przechwytując i obsługując błędy za pomocą wyjątków. Ćwiczysz Ruby Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Ruby Academy?

Nie wymagamy żadnego doświadczenia. Ruby Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 3.

Ile czasu zajmuje lekcja „Obsługa błędów za pomocą begin i rescue”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Ruby Academy?

Tak. Każda lekcja Ruby Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Obsługa błędów za pomocą begin i rescue
  2. Zgłaszanie i dostosowywanie wyjątków
  3. Techniki debugowania
← Powrót do Ruby Academy