Recall & Review
beginner
What is the purpose of the
Codable protocol in Swift?The
Codable protocol allows Swift types to be easily encoded to and decoded from external representations like JSON, making data parsing and serialization simple.Click to reveal answer
beginner
Which two protocols does
Codable combine?Codable combines Encodable (for encoding data) and Decodable (for decoding data).Click to reveal answer
beginner
How do you decode JSON data into a Swift struct that conforms to
Codable?Use <code>JSONDecoder</code> to decode JSON data into the struct. For example: <br><code>let decoded = try JSONDecoder().decode(MyStruct.self, from: jsonData)</code>Click to reveal answer
beginner
What must you do to a Swift struct to make it parse JSON automatically?
Make the struct conform to
Codable and ensure all its properties are also Codable types.Click to reveal answer
intermediate
How can you handle JSON keys that don't match your Swift property names?
Implement a
CodingKeys enum inside your struct to map JSON keys to your property names.Click to reveal answer
What does the
Codable protocol help you do in Swift?✗ Incorrect
Codable is designed to help encode and decode data formats like JSON, not UI or networking.
Which class is used to decode JSON data into Swift types?
✗ Incorrect
JSONDecoder decodes JSON data into Swift types conforming to Decodable.
If your JSON key is
user_name but your Swift property is userName, how do you handle this mismatch?✗ Incorrect
The CodingKeys enum lets you map JSON keys to different property names.
What must all properties of a
Codable struct be?✗ Incorrect
All properties must be Codable to be encoded or decoded automatically.
Which protocol is NOT part of
Codable?✗ Incorrect
Serializable is not a Swift protocol; Codable combines Encodable and Decodable.
Explain how to use the Codable protocol to parse JSON data into a Swift struct.
Think about the steps from defining the struct to decoding JSON.
You got /4 concepts.
Describe how you would handle a JSON key that does not match your Swift property name when using Codable.
Focus on the enum inside the struct.
You got /3 concepts.