본문 바로가기
컴퓨터언어/Swift

[Swift] Codable

by 인턴개구리 2023. 8. 9.

SwiftIUI Tutorial을 하다보니 다음과 같은 코드를 마주쳤다.

struct Landmark: Hashable, Codable, Identifiable {
    var id: Int
    var name: String
    var park: String
    var state: String
    var description: String
    var isFavorite: Bool
    var isFeatured: Bool
}


LandMark 뒤에 붙는 Hashable, Codable, Identifiable은 무엇일까?
일단 Codable부터 살펴보았다.

Codable= Encodable+ Decodable



- Encodable

data를 Encoder에서 변환해주려는 프로토콜로 변환하는 것
Model -> json으로 인코딩

- Decodable

data를 원하는 모델로 변환해주는 것
json -> Model

사용 가능 : Struct, enum, class에서



즉, json, xml 파일을 읽는 것