[Swift] Enum을 이용한 Mixed Type JSON 디코딩
·
Swift/개념 & 응용
서론 JSONArray의 아이템 타입이 혼합될 수 있습니다. let mixedData = """ [{ "type": "movie", "id": 100, "title": "타이타닉", "country": "USA" }, { "type": "person", "id": 101, "name": "레오나르도 디카프리오", "role": "Actor" }, { "type": "music", "id": 102, "title": "My Heart Will Go On", "artist": "Céline Dion" }] """.data(using: .utf8)! 위 JSON을 보면 각 아이템의 type, id는 공통되고 이외 key 구성이 다릅니다. 이럴 경우 type을 이용해 if문으로 처리할 수도 있지만, Enum을 ..
[Swift] Enum을 이용한 ViewModel Action 정의
·
Swift/개념 & 응용
ViewModelAction의 필요성 MVVM 패턴에서 ViewModel은 비즈니스 로직을 정의합니다. ViewController에서는 ViewModel 객체를 통해 비즈니스 로직을 수행하는 메서드를 호출하죠. 이때, ViewModel에서 수행하는 액션들을 Enum으로 묶으면, ViewController가 ViewModel의 개별적인 메서드들을 직접 호출하는 것보다 명확하고 안전하게 메서드를 호출할 수 있습니다. 또한 개별 메서드를 private 접근제어자로 설정이 가능하여 캡슐화도 엄격해집니다. 그럼 이제 방법을 알아보도록 합시다. Enum ViewModelActions 정의 ViewModel의 Action들을 묶은 Enum을 정의합시다. enum ViewModelActions { case save(I..
[Swift] Swift 문법 - 열거형(enum)
·
Swift/개념 & 응용
안녕하세요. 오늘은 Swift의 열거형(enum)에 대해 알아보겠습니다. 안드로이드 개발 당시에도 한 번 사용해보고 열거형의 편리함에 푹 빠졌는데요. Swift에서도 유용하게 사용할 것 같네요. 그럼 시작하겠습니다! 참고 자료 해당 포스팅은 Smile Han님의 유튜브 영상을 참고하며 작성하였습니다. https://www.youtube.com/channel/UCM8wseo6DkA-D7yGlCrcrwA 열거형(enum) 관련 있는 데이터들이 멤버로 구성되어 있는 자료형 객체입니다. 열거형은 아래 세 가지 경우에 유용합니다. 원치 않는 값이 입력되어 에러가 발생하는 것을 방지할 때 입력 값을 특정 범위로 제한할 때 특정 값 중 하나만 선택하게 할 때 성별을 입력할 때는 남자, 여자 중에서만 선택할 수 있고 ..
유정주