앱이 시작할 때 main.c 에 있는 UIApplicationMain 함수에 의해서 생성되는 객체는 무엇인가?

김지훈·2022년 4월 12일
0

iOS 면접

목록 보기
6/82

보류@UIApplicationMain: 코코아 터치 프레임워크에서 앱의 라이프 사이클을 시작하는 함수

앱 실행과정
object-c
1.앱이 실행되면서 맨 처음 main()함수가 실행된다
2.main()함수는 UIApplicationMain()함수를 호출한다
3.UIApplicationMain()함수가 UIApplication객체를 생성한다. 이 객체는 앱의 본체에 해당.
4.UIApplication객체는 info.plist 파일로부터 앱 구성에 필요한 정보들을 로드한다.
5.이벤트 루프 및 초기설정을 진행한다.
6.실행 완료 직전에 앱 델리게이트의 application(_:didFinishLaunchingWithOptions:)메소드가 호출된다.

swift : 스위프트는 main 함수가 없지만 @main 이라는 어노테이션 표기가 있다. 이 표기를 통해서 object-c의 1-5 과정이 대체된다

@main 어노테이션을 찾고 그 클래스를 실행한다
AppDelegate클래스의 application(:didFinishLaunchingWithOptions:)메소드를 호출한다(앱이 실행될때 처리할 내용이 있으면 여기에 작성)
이벤트루프 실행, 작성한 코드들이 실행
앱이 종료될때 앱에대한 메모리 제거를 위해서 pplicationWillTerminate(
:)메소드를 호출(앱이 종료될떄 처리할 내용이 있으면 어기에 작성)
profile

0개의 댓글