Swift, mało znany interfejs API, asercjaFailure() api ratuje życie programisty

May 06 2023
Czy kiedykolwiek słyszałeś o asercjiFailure()? Pracując jako programista iOS przez cztery lata, szkoda, że ​​w końcu znalazłem to api… Jest to niezwykle pomocne podczas debugowania aplikacji. asercjaFailure() to funkcja w Swift, która służy do zatrzymania wykonywania programu.

Czy kiedykolwiek słyszałeś o asercjiFailure()? Pracując jako programista iOS przez cztery lata, szkoda, że ​​w końcu znalazłem to api… Jest to niezwykle pomocne podczas debugowania aplikacji.

asercjaFailure() to funkcja w Swift, która służy do zatrzymania wykonywania programu. Ta funkcja jest częścią standardowej biblioteki Swift i jest używana głównie do celów debugowania. W tym artykule przyjrzymy się, czym jest assertionFailure(), jak działa i kiedy go używać.

Co to jest AssertionFailure()?

asercjaFailure() to funkcja w Swift, która służy do zatrzymania wykonywania programu. Gdy funkcja assertionFailure() jest wywoływana, program natychmiast kończy działanie, wskazując, że asercja się nie powiodła.

Oto przykład:

var someValue: Int? 

guard let someValue = someValue else {
   assertionFailure("some value should not be nil")
   return 
}

Jeśli someValue jest równe zero, program natychmiast się zatrzyma. Wydaje się, że tak samo jest z fatalError(), ale istnieje zasadnicza różnica między fatalError() i assertionFailure().

Kiedy należy używać asertionFailure()?

Główna różnica między asercjąFailure() a fatalError() polega na tym, że asercjaFailure nie jest wykonywana w Releaseśrodowisku. Dlatego musisz umieścić return podczas rozpakowywania wartość pustą, jeśli chcesz, aby zatrzymała wykonywanie kodu.

Wniosek

Podsumowując, asercjaFailure() to funkcja w Swift, która służy do zatrzymania wykonywania programu, gdy warunek, który zakłada się, że jest prawdziwy, jest w rzeczywistości fałszywy. Korzystając z metody assertionFailure(), możesz wykryć błędy na wczesnym etapie procesu programowania i upewnić się, że kod działa poprawnie przed jego wydaniem. Możesz mieć pewność, że Twoja aplikacja nie ulegnie awarii, ponieważ funkcja assertionFailure() jest wywoływana tylko w środowisku Release.