Úloha 5 – Refaktoring podmínek: predikáty, guard clauses a short-circuit
Úloha
Zadání (kontext úlohy)
Dostal/a jsi kratší skript s „reálnými“ chybami v podmínkách a horší čitelností.
Tvým úkolem je kód opravit a zrefaktorovat, aby byl:
-
jednoznačný (
===/!==), -
čitelný (guard clauses, pojmenované predikáty),
-
a lehce efektivnější (krátké vyhodnocování, bez zbytečných výpočtů).
Cíl úlohy
-
Použít striktní porovnání a explicitní převody typů.
-
Rozdělit složitější podmínky do pojmenovaných predikátů a přidat stručné komentáře proč.
-
Zavést guard clauses a vyhnout se magickým číslům.
-
Seřadit testy od levných k nákladnějším a využít krátké vyhodnocování.
Vstupní podmínky
-
Pracuješ pouze s přiloženým souborem
script.js. -
Neměň data (hodnoty objektů a polí), upravuj jen:
-
podmínky,
-
strukturu kódu,
-
komentáře.
-
Požadovaný výstup
Po úpravách musí skript při spuštění vypsat přesně:
Doplňující pokyny
-
Přidej stručné komentáře „proč“ tam, kde upravíš logiku.
-
Zaveď konstanty místo magických čísel (např.
const MIN_AGE = 18;). -
Nepoužívej
==/!=, nepřímé kontrolyNaNani zbytečné opakované výpočty. -
Guard clauses použij například k rychlému ukončení funkce při nesplnění jednoduchých podmínek.