Obsługa błędów
Obsługa błędów
Obsługa błędów to bezpłatna lekcja Swift Academy na CoddyKit. To lekcja 1 z 1. 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 Swift Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Swift Academy zawiera 1 lekcji w sumie.
Wprowadzenie
Dzień dobry,
Podczas działania aplikacji mogą wystąpić błędy zależne od kodu naszej aplikacji (np. błędy logiczne) lub od środowiska, w którym aplikacja jest uruchomiona.
Obsługa błędów może być używana do identyfikowania i kontrolowania występujących błędów.
Typy błędów
Po wystąpieniu błędu obsługa błędów może zapobiec zakłóceniu działania aplikacji, zapisać błędy w dzienniku lub w niektórych przypadkach zamknąć aplikację, gdy jej dalsze działanie jest niemożliwe.
Niektóre błędy mogą być spowodowane błędami logicznymi w kodzie napisanym przez programistów. Na przykład aplikacja zgłosi błąd, gdy wymusimy rozpakowanie wartości opcjonalnej, o którym dowiedzieliśmy się w poprzedniej sekcji.
W niektórych przypadkach błędy mogą wystąpić niezależnie od programisty. Na przykład jeśli na urządzeniu, na którym działa aplikacja, zabraknie miejsca na dysku, w naszej aplikacji również wystąpi błąd.
Niestandardowy enum błędów
Możemy samodzielnie definiować niestandardowe błędy za pomocą enum. W poniższym przykładzie typy błędów, które mogą wystąpić podczas wprowadzania danych karty kredytowej, zostały dodane pod nazwą CreditCardError.
enum CreditCardError: Error {
case insufficientFunds
case issuerDeclined
case invalidCVC
}Słowo kluczowe throws
Jeśli napisana przez nas metoda może generować błąd, do jej definicji dodaje się słowo kluczowe throws.
Poniżej przedstawiono przykład składni.
func processPayment(creditcard: String) throws {
}Słowo kluczowe throw
Czasami podczas pisania kodu programista może potrzebować zgłosić błąd.
Wyobraźmy sobie następującą sytuację. Piszemy system płatności dla banku.
Podczas płatności kartą kredytową saldo klienta jest niewystarczające. W takim przypadku możemy zgłosić błąd informujący o niewystarczających środkach.
throw CreditCardError.insufficientFundsBlok do-catch
Blok do-catch
Gdy chcemy użyć metod, które mogą powodować błędy w naszej aplikacji, możemy przechwycić potencjalne błędy, umieszczając ten kod w blokach do-catch.
Kod, który może powodować błędy, umieszczamy w bloku do, a potencjalne błędy zostaną przechwycone w bloku catch.
Przyjrzyjmy się poniższemu przykładowi
do {
//Code block that may throw an Error
}
catch let error {
print(error)
}Składnia try
Oprócz słowa kluczowego try mamy także użycia try! oraz try?.
Przyjrzyjmy się naszemu przykładowi.
// if an error was thrown, app will crash
let result = try! doSomething()
if let result = try? make() {
//If the make method is successful, the result is unwrap. It is a very elegant use.
} else {
//make() threw an error.
}Wiele bloków catch
Jeśli wywoływana przez nas metoda może zgłaszać wiele błędów, możemy je filtrować i kierować przebiegiem aplikacji w zależności od typu błędu.
W poniższym przykładzie każdy blok catch obsługuje inny możliwy błąd.
do {
try doSomething()
} catch CustomError.errorOne {
//handle errorOne Error
} catch CustomError.errorTwo(let customErr) {
//handle errorTwo Error with customErr
}Gratulacje
Gratulacje 🎉
W tej lekcji nauczyli się Państwo obsługiwać błędy aplikacji za pomocą Swift.
Do zobaczenia w następnej lekcji.

Często zadawane pytania
Czy lekcja „Obsługa błędów” jest bezpłatna?
Tak — pełny tekst „Obsługa błędów” 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 Swift Academy, przejdź na CoddyKit PRO. Kurs Swift Academy zawiera 1 lekcji w sumie.
Co nauczysz się w „Obsługa błędów”?
Obsługa błędów Ćwiczysz Swift 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ąć Swift Academy?
Nie wymagamy żadnego doświadczenia. Swift 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 1.
Ile czasu zajmuje lekcja „Obsługa błędów”?
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 Swift Academy?
Tak. Każda lekcja Swift 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.