Junior — Middle
Jaký je hlavní úkol protokolu Codable ve Swift a v jakých scénářích se používá?
sobes.tech AI
Odpověď od AI
Protokol Codable v Swiftu kombinuje dva protokoly: Encodable a Decodable, a je určen k usnadnění kódování a dekódování dat. Jeho hlavním úkolem je převádět vlastní datové typy (struktury, třídy) do formátů vhodných pro ukládání nebo přenos (například JSON, Property List), a naopak.
Scénáře použití Codable:
- Serializace dat pro odeslání na server (například JSON objekty).
- Deserializace dat přijatých ze sítě.
- Ukládání nastavení nebo dat do místních souborů.
Příklad:
struct User: Codable {
let id: Int
let name: String
}
// Kódování do JSON
let user = User(id: 1, name: "Иван")
let jsonData = try JSONEncoder().encode(user)
// Dekódování z JSON
let decodedUser = try JSONDecoder().decode(User.self, from: jsonData)