iOS JSON和Model之间转换

在iOS开发中我们肯定会用到JSON和Model的转换。iOS中原生支持的就是从字典映射到一个对象,KVC中有一个方法提供,这个方法就是 setValuesForKeysWithDictionary:。

有篇文章还是比较详细的介绍了,有兴趣的可以看看 KVC中setValuesForKeysWithDictionary:

但是这样就需要我们自己先把JSON转换为dictionary,然后再转化为model,这样是比较麻烦的,还有类型转化啊容错性之类的都是要考虑的。所以就出现了很多第三方JSON和Model的转换库。

MantleYYModelFastEasyMappingJSONModelMJExtension

这里YYModel的作者写了一片各个库的比较,写的还是比较全面的iOS JSON 模型转换库评测。主要从性能和容错性部分进行评测。个人觉得性能部分确实不用考虑太多,功能复杂多样,可定制性强性能自然会有些损耗。但我们毕竟只是在转换的时候用一下,性能速度基本上影响不大,可以忽略不计。
如果你希望功能强大可定制强还是使用Mantle比较好,如果需求简单想快速上手MJExtension和YYModel都是可以考虑的,毕竟都是国内开发者写的文档比较容易理解,且有问题都是可以去咨询的。

这有个JSON快速输出为Model属性代码的插件,倒是挺有趣的,懒人专用。ESJsonFormat-Xcode

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,271评论 4 61
  • 1、 记忆会被忘记,但是身体有的时候却记得,你会不由自主地转弯到很久没去的公园,准确地找到那个旧座椅,然后看着上面...
    酸辣笋尖阅读 307评论 0 0
  • 概要 runtime是Objective-C的动态机制。runtime执行的是编译后的代码,这时它可以动态加载对象...
    NapoleonY阅读 199评论 0 0
  • 今天早晨去单位,以为和我去年同一批入职的女同事悄悄的对我说,当时她把门带上,神情激动但又难舍,我直觉告诉我的第一句...
    嘉灏阅读 283评论 2 0
  • 黑夜到底有多黑? 有人说有伸手不见五指的黑 也有人说只有在黑夜才能看清人和事,用心看 黑夜,使人清净,让人思考 白...
    龙敬阅读 195评论 0 2