If you have been developing in UE4 for some time you have probably stumbled into delegates.
What is a delegate? Delegates in two words are a UE4 implementation of the famous Observer template pattern. It allows code clients (or observers) to subscribe to some events. A dispatcher does not even know that something is listening to it. It just broadcasts events. This is a very powerful pattern – it makes your code less coupled.