Help De(codable) parsing. Easily for key not found, value null. https://github.com/outofcoding/DecodeValue outofcoding/DecodeValue Help De(codable) parsing. Contribute to outofcoding/DecodeValue development by creating an account on GitHub. github.com https://cocoapods.org/pods/DecodeValue DecodeValue Help De(codable) parsing. cocoapods.org
파싱을 하기 위해서 만들어진 아주 아름다운 녀석입니다. Mirror를 이용하여 값을 가져와서 자동으로 매핑하도록 하게 되어있죠. 굿... 하지만 기존까지는 CodingKey를 이용하여서 snake를 camel로 변경하여서 개발을 하였던 적이 있었습니다. 나온지는 오래되었지만 아직 모르는 분들이 많아서 해당 부분을 정리하려고 합니다. 1. useDefaultKeys : 기본적인 동작 방법입니다. 2. convertFromSnakeCase : 만약 키가 스네이크로 되어 있으면 카멜로 변경하여서 매핑하여 줍니다. 3. custom([CodingKey]) -> CodingKey) : 사용자 지정하는 방법으로 가능하게 합니다. 1번과 2번은 그냥 정의 해주면 되는데 custom은 정리를 하여야 합니다. 사용방법은..
이전글 http://mrgamza.tistory.com/562 에서 아주 간단한 방법으로 json을 파싱하는 방법을 알아보았습니다. 그래서 제 입장에서도 이것저것 하다가 느낀점과 추가되어야 할 부분에 대해서 적어봅니다. 그냥 아주 간단한 내용만 적어볼까 합니다. 더 자세한 extension 같은것들은 블로그에서 다루지 않도록 하겠습니다. 아마 이번 글 이후에 적게 되겠죠? 이전 글은 일반적으로 서버에서 주는 json의 key값을 이용하여 decoding 하도록 하는 예제였습니다. 서버에서 주는 값과 우리가 사용하는 값을 다르게 할수 없을까? 이전에 사용하던 ObjectMapper같은 경우에는 거의 무조건 값을 매핑하여 주는 방법으로 사용을 하였습니다. 그래서 response data에 스네이크 형태로 내..
Codable을 이용하여 Decode만 하는것이 아니라 Encode도 가능합니다.왜냐면 Codable은 사실 Encodable & Decodable 을 하여준것입니다. https://developer.apple.com/documentation/foundation/archives_and_serialization/encoding_and_decoding_custom_types 그래서 Codable을 딱히 쓰지 않아도 되면 따로 따로 만들어도 됩니다. 후훗 Decode에 관한것은 이전 글에서 참고 바랍니다. http://mrgamza.tistory.com/562 아래와 같이 한번 만들어 봅시다. 이것을 가지고 Json String을 만들겁니다. 12345678910struct SampleData: Codable..
Swift에서 Codable이라는 녀석이 생겼습니다.기존에는 ObjectMapper등을 이용하여서 이것을 처리하였는데요. ObjectMapper가 Warning이 발생하더니 더 이상 업데이트가 되지 않고 있었습니다.더 이상 방치하고 싶지 않아서 이것을 사용해 보려고 하였습니다.다른 프레임워크를 추가할 필요없이 끝나버렸습니다. 흡사 느낌은 거의 Gson과 거의 비슷한 느낌입니다. 기존의 ObjectMapper에서는 Mapping 하여주는 부분을 따로 지정을 하여 주어야 하는데, Reflection으로 처리가 되는것 같네요. 사용방법 12345struct SampleData: Codable { var name: String var age: Int}cs 이렇게 하고 Mapping만 하여 주면 끝납니다. Tes..
- Total
- Today
- Yesterday
- MySQL
- enum
- go
- Windows
- Java
- tomcat
- Linux
- Gradle
- windows10
- golang
- nodejs
- intellij
- ubuntu
- war
- cocoapods
- php
- android
- SWIFT
- Codable
- Xcode
- centos8
- git
- github
- Kotlin
- docker
- Spring
- rxswift
- Python
- CentOS
- ios
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |