[iOS] Foundation

r1verfuture·2022년 4월 15일
0

iOS

목록 보기
24/30

Foundation

  • 프레임워크 중 하나
  • 앱의 기본 계층의 기능을 정의하기 위해 필수적인 데이터 타입, 콜렉션, 운영체제 서비스에 접근한다.
  • 데이터 저장과 지속성, 텍스트 처리 과정, 날짜와 시간 계산, 정렬과 필터링, 네트워킹을 포함한 기능의 기본 계층을 제공한다.
  • Foundation 에 정의된 클래스, 프로토콜, 데이터 타입들은 macOS, iOS, watchOS, tvOS SDK 에서 사용된다.
  • UIKit 을 import 하면 Foundation 도 import 되기 때문에 UIKit 와 Foundation 을 같이 import 해줄 필요없다.
  • Swift Standard Library 를 참조하기 때문에 Swift 를 import 하지 않아도 된다.

Swift Standard Library

  • 복잡한 문제를 해결하고, 성능 좋고 읽기 쉬운 코드를 작성한다.
  • Swift 프로그램을 작성하기 위한 기능 (Int, Double, String 을 포함한 기본 데이터 타입 / Array, Dictionary, Set 을 포함한 데이터 구조체 / print(), abs() 를 포함한 전역 함수 / Collection, Equatable 과 같이 일반적인 추상화를 표현하는 프로토콜 / CustomDebugStringConvertible, CustomReflectable 과 같이 모든 타입에 사용 가능한 작업을 사용자화하기 위해 사용하는 프로토콜 / OptionSet 과 같이 자주 재사용하는 코드를 필요로 하는 구현을 제공하는 프로토콜) 의 기초 계층을 정의한다.

Swift

  • 기본 데이터 타입만 사용할 때 import 한다.

Foundation 에 포함되어 있는 Class

JSONDecoder

  • Swift 4 이전 버전까지는 JSONSerialization 으로 JSON 타입의 데이터를 생성했지만, Swift 4 버전부터는 JSONEncoder 와 JSONDecoder 가 Codable 프로토콜을 지원하기 때문에 손쉽게 JSON 형식으로 인코딩 & 디코딩할 수 있게 되었다.
  • JSON 데이터에서 Swift 데이터 타입의 인스턴스로 디코딩해준다.
  • Apple 공식 문서

JSONEncoder

  • Swift 데이터 타입의 인스턴스를 JSON 데이터로 인코딩해준다.
  • Apple 공식 문서

NSKeyValueObservation

  • (얘는 맞는지 확인 후 내용 추가 or 아예 삭제)

PropertyListDecoder

  • 프로퍼티 리스트 (plist) 에서 데이터 타입의 인스턴스로 디코딩해준다.
  • Apple 공식 문서

PropertyListEncoder

  • 데이터 타입의 인스턴스를 프로퍼티 리스트 (plist) 로 인코딩해준다.
  • Apple 공식 문서

참고

profile
#iOS #Swift #Developer #Python

0개의 댓글

관련 채용 정보