程序的启动原理

  • 程序入口 - mian
  • 类名转字符串好处:防止输入错误
  • 字符串可以转为类 NSStringFromClass(@"UIApplication")
/**
* 第三个参数:UIApplication
* 第四个参数:AppDelegate:必须遵守UIAppDelegate协议
*/
int UIApplicationMain(int argc, char *argv[], NSString * __nullable principalClassName, NSString * __nullable delegateClassName);

UIApplicationMain底层实现

  • 1、根据principalCalssName提供的类名创建UIApplication对象

  • 2、创建UIApplicationDelegate对象,并且成为UIApplication对象的代理

  • 3、开启一个主运行循环,处理事件,可以保持程序一直运行

  • 4、加载info.plist,并且判断有没有指定main.storyboard,如果指定就是去加载

    程序的启动原理_第1张图片
    5ab5e714-bf0f-4812-b3df-8c32e1867304.png

你可能感兴趣的:(程序的启动原理)