Sobes.tech
Junior — Middle

Mis on Codable protokolli peamine ülesanne Swiftis ja millistes stsenaariumides seda kasutatakse?

sobes.tech AI

Vastus AI-lt

Swiftis ühendab Codable protokoll kaks protokolli: Encodable ja Decodable ning on mõeldud andmete kodeerimise ja dekodeerimise lihtsustamiseks. Selle peamine ülesanne on teisendada kohandatud andmetüübid (struktuurid, klassid) sobivatesse formaatidesse (näiteks JSON, Property List) ning vastupidi.

Codable kasutamise stsenaariumid:

  • Andmete serialiseerimine serverile saatmiseks (näiteks JSON-objektid).
  • Saadud andmete deserialiseerimine võrgust.
  • Seadete või andmete salvestamine kohalikele failidele.

Näide:

struct User: Codable {
    let id: Int
    let name: String
}

// Kodeerimine JSON-iks
let user = User(id: 1, name: "Иван")
let jsonData = try JSONEncoder().encode(user)

// Dekodeerimine JSON-ist
let decodedUser = try JSONDecoder().decode(User.self, from: jsonData)