Sobes.tech
Junior — Middle

Hogyan lehet biztosítani, hogy az adatszerkezet a szükséges interfészt valósítja meg?

sobes.tech MI

Válasz az MI-től

A Go nyelvben, hogy ellenőrizzük, egy struktúra megvalósítja-e az interfészt, használhatunk rejtett interfész megvalósítást — elég, ha a struktúra rendelkezik az interfész összes módszerével.

A fordítási időben történő explicit ellenőrzéshez gyakran hozzáadnak egy üres interfész hozzárendelést egy olyan változóhoz, amely a struktúra típusát használja:

var _ MyInterface = (*MyStruct)(nil)

Ez arra készteti a fordítót, hogy ellenőrizze, a MyStruct megvalósítja-e a MyInterface-t. Ha nem, fordítási hiba lesz.

Ez a megközelítés hasznos dokumentálásra és a felületi megvalósítási hibák korai felismerésére.