성능·디버깅
앱 런치 타임
콜드 스타트가 3초 넘게 걸리는 앱을 넘겨받았습니다. 런치 시간을 어떻게 나눠서 측정하겠습니까?
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
콜드 스타트가 3초 넘게 걸리는 앱을 넘겨받았습니다. 런치 시간을 어떻게 나눠서 측정하겠습니까?
pre-main(dyld 로딩·정적 초기화)과 post-main(didFinishLaunching·첫 화면 렌더)으로 나눠 App Launch 템플릿과 DYLD_PRINT_STATISTICS로 실기기 Release에서 콜드·웜을 구분해 잰다.
앱 라이프사이클·시스템주관식기초
홈 화면에서 앱 아이콘을 탭한 순간부터 첫 화면이 그려질 때까지, main() 이전 단계까지 포함해 시스템과 앱 안에서 무슨 일이 순서대로 일어나나요?
#launch-time #dyld #pre-main #app-launch
성능·디버깅객관식심화
앱 런치의 pre-main 구간(main() 호출 전) 시간을 줄이는 데 실제로 효과가 있는 방법을 모두 고르세요.
#launch-time #dyld #pre-main
빌드·배포주관식딥다이브
앱이 동적 프레임워크 40개를 임베드하고 있습니다. 정적 링크로 바꾸면 무엇이 좋아지고 무엇이 나빠지나요?
#launch-time #dyld
성능·디버깅객관식딥다이브
MetricKit(MXMetricManager)을 통해 앱이 실제로 받을 수 있는 데이터를 모두 고르세요.
#launch-time