iOS/설명
[iOS] @main의 역할
Sky Titan
2022. 10. 1. 17:10
728x90
[iOS] iOS 애플리케이션 실행 순서, UIApplicationMain, @main
C언어 기반의 프로그래밍 언어에서는 main이라는 함수가 앱의 시작이 된다. iOS 앱 또한 Objective-C 기반에서 돌아가기 때문에 앱은 main 함수에서 시작된다. iOS 애플리케이션 실행 순서 main 함수 실행
you9010.tistory.com
@main의 역할
- 기존에 Objective-C 기반 프로젝트에서는 main.m 파일 안에main함수를 선언하여 실행함으로써 앱의 시작할 수 있는 entry point를 제공했다.
- main함수는 UIApplicationMain 함수를 실행하고 UIApplicationMain함수는 UIApplication객체를 생성하고 UIApplicationDelegate를 인스턴스화시키고 UIApplication객체에 할당하는 작업을 한다.
- Swift 기반 프로젝트에서는 main.m 파일이 없고 @main이라는 annotation을 사용해서 UIKit앱의 진입점을 지정해준다.
- @main을 AppDelegate class에 선언하고, UIApplicationDelegate에 선언되어있는 정적 main함수를 실행하게 해준다.
- Swift 5.3부터 @UIApplicationMain에서 @main으로 바뀜


728x90