1. Framework: framework란?
1. Framework: framework란? 이번 포스트에서는 iOS 앱을 개발할 때 외부라이브러리로 많이 이용하는 형태인 framework에 대해서 알아보겠습니다. Framework란? framework는 이미지, nib파일, 다국어 문구, 문서, 공유 라이브러리리, 헤더 파일 등을 포함하는 디렉토리입니다. framework의 목적은 code와 resource를 재사용하는 것입니다. static library(.a파일)는 코드만을 공유하지만 framework는 이미지 파일 및 다국어 파일 등 리소스 파일과 헤더파일을 framework 하나로 공유할 수 있습니다. framework는 또한 bundle이며 NSBundle로 접근할 수 있습니다. 다른 bundle과 다르게 finder에서 보통의 디렉토리 처럼 바로 접근할 수 있습니다. 주요 특징 framework는 관련된 항목을 하나로 묶어줍니다. framework는 static library보다 다양한 리소스 타입을 포함할 수 있습니다. 예를 들어 관련된 헤더 파일과 문서를 포함할 수 있습니다. 여러 버전의 framework를 하나의 bundle에 포함시킬 수 있습니다. 이 점은 오래된 프로그램에서 안정성을 가질 수 있도록 만듭니다. (macOS) Note: framework는 실행코드 없이 리소스 파일만 포함할 수도 있습니다. 그러나 이 방식은 일반적인 사용이 아닙니다. 이런 경우는 프로젝트 생성시 bundle로 생성할 수 있습니다. 구조 MyFramework.framework/ Modules/ module.modulemap Headers/ MyFramework.h MyFramework Resources MyFramework.framework의 디렉토리 구조는 위와 같습니다. MyFramework.framework 디렉토리 아래에 Modules와 Headers 서브디렉토리