Sobes.tech
Junior — Middle

Jaké důvody umožňují používat direktivu TODO s jakýmkoli typem dat nebo strukturou?

sobes.tech AI

Odpověď od AI

V Kotlinu je direktiva TODO() funkce, která vždy vyvolá výjimku NotImplementedError. Je deklarována s návratovým typem Nothing, což znamená, že funkce nikdy nevrací hodnotu a přeruší provádění.

Díky typu Nothing lze TODO() použít kdekoliv, kde je očekáván jakýkoliv datový typ nebo struktura. To umožňuje dočasně označit místo v kódu bez starostí o konkrétní typ návratové hodnoty. Například:

fun getUser(): User = TODO("Implementovat získání uživatele")

val number: Int = TODO()

val list: List<String> = TODO()

Takto TODO() slouží jako užitečný marker pro nedokončený kód, umožňuje přeložení programu a označení míst, která je třeba doplnit, bez ohledu na typ dat.