Junior — Middle
Môžete uviesť príklad, kedy je rozdelenie rozhraní v projekte odôvodnené?
sobes.tech AI
Odpoveď od AI
Rozdelenie rozhraní je odôvodnené, keď máte veľké rozhranie s mnohými metódami, ktoré nie sú vždy potrebné pre všetkých klientov. Napríklad v projekte iOS môžete rozhranie rozdeliť na niekoľko užších, aby rôzne triedy implementovali iba tie metódy, ktoré naozaj potrebujú. To zlepšuje čitateľnosť kódu a uľahčuje údržbu.
Príklad: existuje protokol MediaPlayable s metódami play(), pause(), stop(), record(). Ak trieda je zodpovedná iba za prehrávanie, nemusí implementovať record(). Potom sa dá rozdeliť na dva protokoly:
protocol MediaPlayable {
func play()
func pause()
func stop()
}
protocol MediaRecordable {
func record()
}
Takto triedy implementujú iba potrebné rozhrania.