Junior — Middle
Jaki jest główny cel protokołu Codable w Swift i w jakich scenariuszach jest używany?
sobes.tech AI
Odpowiedź od AI
Protokół Codable w Swift łączy dwa protokoły: Encodable i Decodable, i służy do wygodnego kodowania i dekodowania danych. Jego głównym zadaniem jest przekształcanie niestandardowych typów danych (struktur, klas) w formaty odpowiednie do przechowywania lub przesyłania (np. JSON, Property List), i odwrotnie.
Scenariusze użycia Codable:
- Serializacja danych do wysłania na serwer (np. obiekty JSON).
- Deserializacja danych otrzymanych z sieci.
- Zapisywanie ustawień lub danych do lokalnych plików.
Przykład:
struct User: Codable {
let id: Int
let name: String
}
// Kodowanie do JSON
let user = User(id: 1, name: "Иван")
let jsonData = try JSONEncoder().encode(user)
// Dekodowanie z JSON
let decodedUser = try JSONDecoder().decode(User.self, from: jsonData)