iOS/Swift 상식
Codable
HJ39
2023. 6. 26. 00:52
Codable = Encodable + Decodable
Encodable은 data를 Encoder에서 변환해주려는 프로토콜로 바꿔주는 것
Decodable은 data를 원하는 모델로 Decode 해주는 것
Codable은 프로토콜이라서 Struct, enum, class 전부 채택 가능하다.
struct User: Codable {
enum CodingKeys: String,CodingKey {
case id
case name
case birth
case phoneNum = "phone_num"
}
let id: Int
let name: String
let birth: String
let phoneNum: String
}
Enum CodingKeys
CodingKeys는 json Key에서 사용하는 이름이 아닌 내가 원하는 이름으로 사용할 수 있게 하는 프로토콜이다.
위 예제에서 json에 실제로 사용하는 값들은 id, name, birth, phone_num이지만 내가 지정한 이름은 id, name birth, phoneNum이다.
※ 참고