В статье автор показывает, как выйти за рамки стандартного Codable в Swift, когда JSON-структура не совпадает с моделью данных. Вместо громоздких
init(from:) предлагается разделять DTO (структуру, соответствующую JSON) и модель, используя протоколы AdvancedDecodable и AdvancedEncodable. Они позволяют автоматически кодировать и декодировать данные через промежуточный слой, где можно добавлять валидацию и преобразования, не теряя простоту Codable. Помимо этого, автор предлагает обёртки Maybe, Either и Both — универсальные решения для обработки некорректных или неоднородных данных. Такой подход сохраняет читаемость и устойчивость к изменениям API, делая код надёжнее и понятнее.Статья: https://nothingtocommitworkingtreeclean.com/advanced_codable.html
Платформа: iOS
