MVC -> MVVM으로 구조 변경해보기
MVVM은 무엇이고, 왜 사용해야할까?
많은 글들을 보고, 코드를 봤지만 나는 아직도 왜 MVVM이 필요한지 모르겠다..
그래서 MVC를 MVVM으로 리팩토링해보며 왜 필요한 지 공부해보고자 한다.
우선 내가 만들고자 하는 앱은 iTunes API를 이용해 음악 정보를 받아오는 아주 단순한 앱이다.
MVVM, MVC에서 공통적으로 사용하는 코드는 다음과 같다.
공통 코드
모델
import Foundation
struct MusicData: Decodable {
let resultCount: Int
let results: [Music]
}
struct Music: Decodable {
let albumImage: String
let musicTitle: String
let artist: String
let albumName: String
let releaseDate: String
enum CodingKeys: String, CodingKey {
case albumImage = "artworkUrl100"
case musicTitle = "trackName"
case artist = "artistName"
case albumName = "collectionName"
case releaseDate = "releaseDate"
}
}
네트워크 통신
Last updated