Nie jestem rodzimym językiem angielskim. W moim ojczystym języku zdaję sobie sprawę z niektórych terminów odnoszących się do warunku sprawdzonego w celu zatrzymania rekurencji oraz warunku sprawdzonego pod kątem ekstremalnych, mało prawdopodobnych lub bardzo prostych przypadków. W języku angielskim spotkałem się z terminami „przypadek na krawędzi”, „przypadek na rogu”, „przypadek na granicy” i „przypadek podstawowy”, ale nie potrafię do końca zrozumieć różnic i które są używane w odniesieniu do czego; Chciałbym uzyskać podsumowanie różnic między nimi.
W szczególności byłbym bardzo szczęśliwy, gdyby ktoś mógł dostarczyć adnotacje do wierszy w poniższym przykładzie kodu:
int transmogrify(int n) {
1. assert(n <= 1000000);
2. if (n < 0) return -1;
3. if (n == 1000000) return PRE_CALC;
4. if (n == 0) return n+1; // For stopping the recursion
5. if (n == 1251) return 3077;
return transmogrify(n-1);
}
Myślę, że to:
- Kontrola poczytalności
- Kontrola wejścia
- Przypadek graniczny? Edge case? Narożna skrzynka?
- Podstawa? Przypadek graniczny?
- Narożna skrzynka? Edge case?