빌드·배포
정적 vs 동적 링킹
앱이 동적 프레임워크 40개를 임베드하고 있습니다. 정적 링크로 바꾸면 무엇이 좋아지고 무엇이 나빠지나요?
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
앱이 동적 프레임워크 40개를 임베드하고 있습니다. 정적 링크로 바꾸면 무엇이 좋아지고 무엇이 나빠지나요?
정적 링크는 dyld 로딩이 사라져 런치가 빨라지고 데드 코드 스트리핑이 되지만, 앱과 Extension이 같은 라이브러리를 공유하면 코드가 각 바이너리에 중복되고 리소스 번들 처리가 번거롭다.
성능·디버깅객관식심화
앱 런치의 pre-main 구간(main() 호출 전) 시간을 줄이는 데 실제로 효과가 있는 방법을 모두 고르세요.
#mergeable-libraries #dyld #launch-time
빌드·배포주관식심화
Swift 소스 파일이 iPhone에서 실행되는 바이너리가 되기까지 어떤 단계를 거치나요?
#static-library #dyld
앱 라이프사이클·시스템주관식기초
홈 화면에서 앱 아이콘을 탭한 순간부터 첫 화면이 그려질 때까지, main() 이전 단계까지 포함해 시스템과 앱 안에서 무슨 일이 순서대로 일어나나요?
#dyld #launch-time
성능·디버깅주관식심화
콜드 스타트가 3초 넘게 걸리는 앱을 넘겨받았습니다. 런치 시간을 어떻게 나눠서 측정하겠습니까?
#dyld #launch-time