Swift官方Codable 字典转模型(超简单)

以前在使用swift 的时候,每次遇到数据解析,字典转模型的时候,常常是痛苦万分... 

Swift官方Codable 字典转模型(超简单)_第1张图片
网络请求图1

代码真的丑,要不是如下图底层封装了try catch 真不知道要写多少if let ,guard let

Swift官方Codable 字典转模型(超简单)_第2张图片
网络请求图2

后来尝试用了HandyJSON,用起来还是不顺手,索性直接混了OC的MJExtension,如图

Swift官方Codable 字典转模型(超简单)_第3张图片
swift混编MJExtension

swift4.0出来后,并没有怎么关注,不过不打算混OC了,于是 pod 'HandyJSON' -> pod install-> 编译,然后就华丽丽的报错了...

Swift官方Codable 字典转模型(超简单)_第4张图片
一脸懵逼的错误

Excuse me,百度了下,居然没有人遇到过这个错误,莫非 <-- 不合法??但是这只是一个方法命名,没关系的呀,最终还是解决不了... 

不过在网上找到了swift 4.0 新特性Codable,好吧,苹果爸爸,你超棒的。

网络请求这块还是采用简单封装Alamofire来实现,代码如图:

Swift官方Codable 字典转模型(超简单)_第5张图片
Alamofire网络请求简单封装

然后创建模型对象,开发时间长了,用过MVVM、MVP,一个个鼓吹的贼厉害,然鹅,我还是觉得MVC好用,毕竟谁说数据不能封在Model层和View层的,言归正传 Codable真的超级好用,异常强大。model中代码如图所示

Swift官方Codable 字典转模型(超简单)_第6张图片
model中的代码

controller中调用代码如图所示

controller中调用代码

swift的数据解析从未如此轻松过,下载地址:https://github.com/pengjinguang521/testCodable

你可能感兴趣的:(Swift官方Codable 字典转模型(超简单))