Leksykon IT › Programowanie › Service locator

Service locator

Programowanie Svenska → Zaktualizowano: 2026-10-25

Rejestr, który wydaje usługę przez jej interfejs, oszczędzając wywołującemu znajomości i konstruowania konkretnej implementacji.

Silniki gier są pełne globalnych systemów — dźwięku, logowania, dostępu do plików — których potrzebuje niemal wszystko, ale nikt nie chce przepychać ich argumentem przez cały łańcuch wywołań. Service locator oferuje jedno centralne miejsce wyszukiwania: Locator::audio()->play(...). Konkretną klasę można podmienić, nawet na cichą usługę zerową na czas testów.

Wzorzec budzi spory. Krytycy (m.in. Mark Seemann) nazywają go ukrytym stanem globalnym, który zasłania zależności, i wolą wstrzykiwanie zależności. W grach i tak często wygrywa prostotą oraz tym, że silnik rzadko podmienia swoje kluczowe systemy w trakcie działania.

← Wróć do leksykonu