Можешь объяснить, что такое протокол `Codable` в Swift и как он облегчает сериализацию и десериализацию типов данных? — ДейлиПреп