본문 바로가기

iOS

[iOS] Foundation

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 된다.

 

 

 

[LECTURE] 3) Foundation이란? : edwith

Foundation 프레임워크 코코아 터치 프레임워크에 포함된 Foundation 프레임워크에 대해 알아봅시다. Foundation은 iOS 애플리케이션의 운영체제 서비스와 기본 ... - 부스트코스

www.edwith.org

 

 

Foundation | Apple Developer Documentation

The Foundation framework provides a base layer of functionality for apps and frameworks, including data storage and persistence, text processing, date and time calculations, sorting and filtering, and networking. The classes, protocols, and data types def

developer.apple.com

'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