Junior — Middle
Kokia yra pagrindinė Codable protokolo užduotis Swift ir kokiuose scenarijuose jis naudojamas?
sobes.tech AI
Atsakymas iš AI
Swift kalbame Codable protokolas sujungia du protokolus: Encodable ir Decodable, ir yra skirtas palengvinti duomenų kodavimą ir dekodavimą. Jo pagrindinė užduotis yra pritaikyti naudotojo tipus (struktūras, klases) formatais, tinkamais saugojimui ar perdavimui (pvz., JSON, Property List), ir atvirkščiai.
Codable naudojimo scenarijai:
- Duomenų serializavimas siuntimui į serverį (pvz., JSON objektai).
- Gauto duomenų dekodavimas iš tinklo.
- Nustatymų ar duomenų išsaugojimas vietiniuose failuose.
Pavyzdys:
struct User: Codable {
let id: Int
let name: String
}
// Kodavimas į JSON
let user = User(id: 1, name: "Иван")
let jsonData = try JSONEncoder().encode(user)
// Dekodavimas iš JSON
let decodedUser = try JSONDecoder().decode(User.self, from: jsonData)