Foundation를 Import하지 않았는데 자동입력이 되는 이유?

XCODE는 헤더파일을 Import한 헤더에서 코드를 찾아주어 프로그래밍하는데 오타율과 타수를 줄여줍니다.

위 사진에서 보면 NSDi까지 입력했는데 쿨다운 셀렉트 윈도우가 나와 사용자가 입력하려는걸 예측하고있습니다.

Xcode Code Hint

저걸 어떻게 컴퓨터가 알고 있냐면 Foundation.Framework의 헤더에서 찾아 오는건데요. 저 위 코드를 보시면 UIKit/UIKit.h 헤더 파일만 Import했습니다.AppDelegate.h는 . m 헤더 파일입니다.

그렇다면 어디서 Import 된걸까요?

바로 “프로젝트이름-Prefix.pch” 파일입니다.

Xcode Prefix.h

프로젝트를 생성할때 “{프로젝트이름}-Prefix.pch” 로 생성 되는데 이파일 안에 내용을 보시면 Foundation Framework가 import 되어있는걸 볼수 있어요. 이파일에서 Import 할 경우 프로젝트 전반적으로 헤더파일을 참고할 수 있습니다.

하지만 모든 헤더를 여기서 Import 하면 막대한 양의 헤더들이 읽혀 자신이 원하는 메서드나 맴버를 찾기 힘들겠죠?

개발환경

MacBook Air

XCODE 4.2 iOS SDK 5.0

Posted in Programming Life with : Xcode, iOS

Written on October 25, 2011