程序启动过程分为2类:
1.有storyboard:
1.main 函数
2.UIApplicationMain
创建 UIApplication 对象
创建 UIApplication 的 delegate 对象
3.根据Info.plist 获得最主要storyboard的文件名,加载最主要的storyboard(有 storyboard)
创建 UIWindow
创建和设置 UIWindow 的 rootViewController
显示窗口
2.没有storyboard
1.main 函数
2.UIApplicationMain
创建 UIApplication 对象
创建 UIApplication 的 delegate 对象
3.delegate 对象开始处理(监听)系统事件(没有 storyboard)程序启动完毕的时候, 就会调用代理的application:didFinishLaunchingWithOptions:方法在application:didFinishLaunchingWithOptions:中创建 UIWindow创建和设置 UIWindow 的 rootViewController* 显示窗口