Sobes.tech
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)