NSApplicationMain 如何找到主要的 nib 文件?

How does NSApplicationMain find the main nib file?

The documentation for the NSApplicationMain function 说是

loads the main nib file from the application’s main bundle

网络上建议 NSApplicationMain 通过查看 Info.plist 文件中的 NSMainNibFile 键找到 "the main nib file"(被 XCode 混淆为 "Main nib file base name"),即 NSApplicationMain 做类似

的事情
let mainBundle: Bundle = Bundle.main
let mainNibFileBaseName: String = mainBundle.infoDictionary!["NSMainNibFile"] as! String
mainBundle.loadNibNamed(mainNibFileBaseName, owner: myApp, topLevelObjects: nil)

但是如果我删除 NSMainNibFile 键,应用程序仍然会找到并加载我的 MainMenu.xib 文件!然后,如果我将文件重命名为 Foo.xib,应用程序会查找并加载 Foo.xib!

NSApplicationMain 用来查找 "the main nib file" 的真正搜索程序是什么?

如果密钥 NSMainNibFile 丢失,NSApplicationMain 调用 [NSBundle loadNibNamed:nil owner:application],后者调用 [mainBundle pathForResource:nil ofType:@"nib"],returns 它找到的第一个 nib 文件。