Prior to OS X 10.10, view controllers on OS X were relatively simple and, frankly, limited:
View controllers were not part of the responder chain.
View life cycle methods such as viewDidLoad(), viewWillAppear(), viewWillDisappear(), and so forth were not available.
Cocoa did not provide any container view controllers.
NSWindow’s contentViewController was not available.
Despite these limitations, if you are targeting OS X 10.9 and earlier and your application would benefit from view controllers, we believe it is worth the extra effort to work around these limitations and use view controllers.
You can include a view controller in the responder chain manually by patching it ...