Sobes.tech
Junior — Middle

Aké dôvody umožňujú používanie direktívy TODO s akýmkoľvek typom údajov alebo štruktúrou?

sobes.tech AI

Odpoveď od AI

V Kotlinu je direktíva TODO() funkcia, ktorá vždy vyhodí výnimku NotImplementedError. Je deklarovaná s návratovým typom Nothing, čo znamená, že funkcia nikdy nevracia hodnotu a preruší vykonávanie.

Vďaka typu Nothing možno TODO() použiť kdekoľvek, kde sa očakáva akýkoľvek dátový typ alebo štruktúra. To umožňuje dočasne označiť miesto v kóde bez starostí o konkrétny typ návratovej hodnoty. Napríklad:

fun getUser(): User = TODO("Implementovať získanie používateľa")

val number: Int = TODO()

val list: List<String> = TODO()

Takto TODO() slúži ako užitočný marker pre nedokončený kód, umožňuje kompiláciu programu a označenie miest, ktoré je potrebné doplniť, bez ohľadu na typ dát.