Callback w tłumaczeniu na polski to wywołanie zwrotne. Wywołanie zwrotne jest techniką programowania, którą należy określić jako odwrotność do wywołania funkcji. Można powiedzieć, że zadaniem użytkownika jest zarejestrowanie funkcji do późniejszego wywołania. Kiedy to się stanie, nie pozostaje nic innego, jak najzwyczajniej w świecie czekać, biblioteki dokonają wywołania w stosownym czasie.
W przypadku zwykłego korzystania z biblioteki sytuacja jest odwrotna — mamy wywołanie podprogramów, które są dostarczane przez bibliotekę. Podprogramem określa się wydzieloną część programu, której zadaniem jest wykonywaniem jakichś operacji. Natomiast cele, dla których stosowane są podprogramy to uproszczenie programu głównego oraz zwiększenie czytelności kodu.

Specjalizacje

Od teraz skupiamy się już tylko na wywołaniu zwrotnym, czyli callbacku. Tak się składa, że w przypadku callbacku mamy specjalizacje i w tekście dokonamy omówienia polimorfizmu (polimorfizm to jedna z najpopularniejszych specjalizacji, jeżeli chodzi o wywołania zwrotne) oraz mechanizmu sygnałów i slotów.
Przez polimorfizm rozumie się mechanizmy, dzięki którym programista może wykorzystywać wartości, zmienne oraz podprogramy na różne sposoby. Dlaczego stosuje się polimorfizm? Określając sytuacje za pomocą najprostszego języka — po prostu polimorfizm zapewnia dla programisty dużą elastyczność. Wypada też wspomnieć o dwóch kwestiach: polimorfizm ściśle wiąże się z metodami wirtualnymi, a złe operowanie polimorfizmem może mieć przełożenie na spowolnienie działania aplikacji oraz doprowadzenie do istotnych problemów.

Mechanizm sygnałów i slotów można określić jako jedną z metod mających na celu zorganizowanie rozsyłania zdarzeń poprzez aplikacje komputerowe. Mechanizm ten przede wszystkim ma miejsce w graficznych interfejsach użytkownika.
Oprócz tego obowiązkowo trzeba zaznaczyć, co rozumie się poprzez połączenie sygnału ze slotem. Tak więc rezultatem wywołania zwrotnego jest wywołanie instrukcji będących procedurami obsługi zdarzenia. Konkretnie rozumie się przez to rejestracje i ta rejestracja to połączenie sygnału ze slotem.

Na koniec powiedzmy sobie jeszcze o sygnałach w ogólności. Sygnały podzielone są na unicast i multicast. Typ unicast charakteryzuje się tym, że może być wyłącznie jeden slot. Z kolei typ multicast cechuje się możliwością podpięcia dowolnej liczby slotów. Co do emisji sygnału, wszystkie sloty wywoływane są po kolei, poza tym najbardziej prawdopodobne jest to, że ich kolejność nie będzie zdefiniowana.