Dynamic method execution is the strong feature of Cocoa runtime environment. NSInvocation allows users to execute method dynamically using selector and method signature on the fly.
In short you can pass method string to the selector and create invocation out of it on the fly. You do not even need