NSPrincipalClass
NSPrincipalClass is a key in a macOS application's Info.plist that designates the class to instantiate as the app’s principal NSApplication object when the application launches. If the key is not present, the system uses the default NSApplication class.
At startup, the application’s main entry point (such as NSApplicationMain) reads the Info.plist and creates an
To use NSPrincipalClass, you create a subclass of NSApplication in your project and specify its class name
Notes and considerations: the custom principal class must be available at launch time and correctly linked