Sobes.tech
Junior — Middle

Вазифаи асосии протоколи Codable дар Swift чист ва дар кадом сценарияҳо истифода мешавад?

sobes.tech AI

Ҷавоб аз AI

Протоколи Codable дар Swift ду протоколро муттаҳид мекунад: Encodable ва Decodable, ва барои осон кардани рамзгузорӣ ва рамзкушоии маълумотҳо пешбинӣ шудааст. Вазифаи асосии он табдил додани намудҳои маълумоти фармоишӣ (структураҳо, синфҳо) ба форматҳое мебошад, ки барои нигоҳдорӣ ё интиқол мувофиқанд (масалан, JSON, Property List), ва баръакс.

Ҳолатҳо барои истифодаи Codable:

  • Сериалкунии маълумот барои фиристодан ба сервер (масалан, объектҳои JSON).
  • Десериалкунии маълумоти гирифташуда аз шабака.
  • Захира кардани танзимот ё маълумот дар файлҳои маҳаллӣ.

Масалан:

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

// Кодгузорӣ ба JSON
let user = User(id: 1, name: "Иван")
let jsonData = try JSONEncoder().encode(user)

// Декодкунии аз JSON
let decodedUser = try JSONDecoder().decode(User.self, from: jsonData)