[swift] ObjectMapper를 사용하여 Swift 객체에 배열을 매핑하는 방법은 무엇인가요?
  1. ObjectMapper 라이브러리를 프로젝트에 추가합니다. Xcode에서 “File” -> “Swift Packages” -> “Add Package Dependency”를 선택하여 ObjectMapper를 설치할 수 있습니다. 또는 CocoaPods 또는 Carthage를 통해 설치할 수도 있습니다.

  2. 매핑을 원하는 Swift 객체를 만듭니다. 예를 들어, 배열의 요소로 사용할 Book 객체를 만들어보겠습니다.

import Foundation
import ObjectMapper

class Book: Mappable {
    var title: String?
    var author: String?
    
    required init?(map: Map) {}
    
    func mapping(map: Map) {
        title <- map["title"]
        author <- map["author"]
    }
}
  1. 매핑할 JSON 데이터를 가져옵니다. 이 데이터는 서버에서 받아온 API 응답이거나, 파일 등에서 읽을 수도 있습니다.
let json = """
    [{
        "title": "The Alchemist",
        "author": "Paulo Coelho"
    },
    {
        "title": "1984",
        "author": "George Orwell"
    }]
"""
  1. ObjectMapper를 사용하여 JSON 데이터를 매핑합니다. 배열 형태의 JSON을 매핑할 때는 ObjectMapper의 mapArray() 메서드를 사용합니다.
if let books = Mapper<Book>().mapArray(JSONString: json) {
    for book in books {
        print("Title: \(book.title ?? ""), Author: \(book.author ?? "")")
    }
}

위 예제에서는 ObjectMapper의 mapArray() 메서드를 사용하여 JSON 데이터를 Book 객체의 배열로 매핑하였습니다. 매핑된 배열을 순회하면서 각 책의 제목과 작가를 출력하였습니다.

매핑에 성공하면, Book 객체의 배열이 생성되어 books 상수에 할당됩니다. 이후 books 배열을 순회하며 각 요소의 속성에 접근할 수 있습니다.

이처럼 ObjectMapper를 사용하여 Swift 객체에 배열을 매핑할 수 있습니다. 자세한 내용은 ObjectMapper의 문서를 참고하시기 바랍니다.