Foundation Framework
Access essential data types, collections, and operating-system services to define the base layer of functionality for your app.
원시 데이터 타입(String, Int, Double), 컬렉션 타입(Array, Dictionary, Set) 및 운영체제 서비스를 사용해 애플리케이션의 기본적인 기능을 관리하는 프레임워크이다.
Foundation 프레임워크는 데이터 타입, 날짜 및 시간 계산, 필터 및 정렬, 네트워킹 등의 기본 기능을 제공한다.
Foundation 프레임워크에서 정의한 클래스, 프로토콜 및 데이터 타입은 iOS, macOS 등 모든 애플 SDK에서 사용된다.
Foundation 기능별 요소
Fundamentals
• Number, Data, String : 원시 데이터 타입 사용
• Collection : Array, Dictionary, Set 등과 같은 컬렉션 타입 사용
• Dates and Times : 날짜와 시간을 계산하거나 비교하는 작업
• Units and Measurement : 물리적 차원을 숫자로 표현 및 관련 단위 간 변환 기능
• Data Formatting : 숫자, 날짜, 측정값 등을 문자열로 변환 또는 반대 작업
• Filters and Sorting : 컬렉션의 요소를 검사하거나 정렬하는 작업
App Support
• Task Management : 앱의 작업과 시스템 서비스와의 상호작용을 관리
• Resources : 애플리케이션의 에셋과 번들 데이터에 접근 지원
• Notification : 정보를 퍼뜨리거나 받아들이기는 기능 지원
• App Extension Support : 확장 애플리케이션과의 상호작용 지원
• Errors and Exceptions : API와의 상호작용에서 발생할 수 있는 문제 상황에 대처할 수 있는 기능 지원
• Scrpiting Support
Files and Data Persistence
• File System : 파일 또는 폴더를 생성하고 읽고 쓰는 기능 관리
• Archives and Serialization : 속성 목록, JSON, 바이너리 파일들을 객체로 변환 또는 반대 작업 관리
• iCloud : 사용자의 iCloud 계정을 이용해 데이터를 동기화하는 작업 관리
• Preferences
• Spotlight : 로컬 기기의 파일과 아이템을 검색하고, 검색을 위한 indexing
Networking
• URL Loading System : 표준 인터넷 프로토콜을 통해 URL과 상호작용하고 서버와 통신하는 작업
• Bonjour : 로컬 네트워크를 위한 작업
원시 데이터 타입 등을 사용하기 위해 기본적인 swift 파일을 추가하면 Foundation이 import 되어 있다.
ViewController에서도 이 데이터 타입들을 사용하는데, UIKit을 import 하면 Foundation이 간접적으로 import 된다.
'iOS' 카테고리의 다른 글
[iOS] 테이블 뷰 (TableView) - DataSource, Delegate (0) | 2020.06.10 |
---|---|
[iOS] 디자인 패턴 | MVC (0) | 2020.06.10 |
[iOS] UIKit (0) | 2020.06.10 |
[iOS] 내비게이션 인터페이스 (0) | 2020.06.09 |
[iOS] Photos - Requesting changes to the Photo Library (0) | 2020.06.08 |