我注意到这documentation for NSWindowDelegate
条阅读(强调我的):
一组optional个方法,窗口的委托可以实现这些方法来响应事件,如调整窗口大小、移动、显示和最小化.
然而,这documentation for NSApplicationDelegate
人是这样写的:
一组方法,用于管理应用的生命周期及其与常见系统服务的交互.
这里没有optional这个词.我发现不包括委托会减少应用程序的可执行文件大小,如果我只使用single window for the entire lifetime of the application,似乎可以替换以下内容:
public func applicationShouldTerminateAfterLastWindowClosed(_ _: NSApplication) -> Bool {
return true
}
使用以下NSWindowDelegate
中的方法:
public func windowWillClose(_ _: Notification) {
NSApp.stop(nil)
}
行为看起来是一样的,但我在任何地方都找不到任何迹象表明,没有NSApplicationDelegate
的手机是苹果官方支持的.这有什么不可预见的后果吗?