Idea fail-fast mówi o tym, że najlepiej żeby system/program/cokolwiek wywaliło się jak najszybciej. No to lecimy z przykładami 🙂
Metoda/obiekt – programowanie obiektowe
Tutaj idea fail-fast będzie polegała na jak najszybszej weryfikacji otrzymywanych parametrów.
Metoda
public int divide(int a, int b){
if(b == 0){
throw new IllegalArgumentException("You can not divide by zero");
}
//...
}
Klasa
class Repository {
Repository(Datasource datasource){
tryToConnect(datasource);
// ...
}
// ...
}
Kosztowne obliczenia
Załóżmy, że mamy system, który na pewnym etapie wykonuje obliczenia które są bardzo kosztowne (na przykład uczenie wielkich modeli językowych). Zakładając, że po wykonaniu tych obliczeń lądują one w bazie danych warto zawczasu sprawdzić połączenie z bazą danych. Aby przez prostą pomyłkę w konfiguracji połączenia do bazy danych nie stracić kosztownych obliczeń.
W związkach 🙂
W związkach ideę fail-fast można zastosować poprzez przegadanie kluczowych tematów dla związku zanim się wejdzie w związek małżeński – takich jak na przykład: czy oboje chcemy mieć dzieci? czy chcemy mieszkać w bloku, czy raczej mieć swój dom? itd. Dzięki takim rozmowom czasami można się rozstać bez większych problemów, zanim podejmiemy poważne decyzje.