前言
Hi Coder,我是 CoderStar!
距离上一次发技术文已经挺长的一段时间了,这段时间各种各样的事情挺忙的,所以也没有专门抽时间来写文章了。(其实还有一部分原因是心态的变化)
稍微介绍两个这段时间的技术产出吧。
APIService
如果是我微信好友的小伙伴,估计已经在我朋友圈看到我分享过,在这里就简单介绍下吧,具体细节可以去repo
看文档以及代码。
APIService
是一个轻量的 Swift 网络抽象层框架,将请求、解析等流程工作分成几大角色去承担,完全面向协议实现,利于扩展。
github 链接:APIService[1]
如果有兴趣的小伙伴可以了解下。
iOSToolKit
因为新的网络框架默认使用官方的Codable
作为JSON
序列化工具,之前使用的JSON
转Model
工具对此支持的不是特别好,所以我自己简单撸了一个,GUI
使用的是SwiftUI
。(顺便说下,SwiftUI
是真快,坑也是真多)
工具大概长这样:
主页面
工具目前仅支持Swift
语言的几种框架。(其中对OC
的支持也写的差不多了,后续支持完毕也会提示大家升级,工具设计的时候考虑了要扩展到其他语言,所以对于语言的扩展支持非常容易,后续大家有对其他语言的需要也可以联系我)
Codable
:因为Codable
一般都需要配合propertyWrapper
使用,所以工具提供了为每一种类型自动加上自定义propertyWrapper
的设置;SwiftyJSON
HandyJSON
dmg 链接:iOSToolKit.dmg[2]
如果对工具有一些建议,欢迎与我联系。
最后
其实这两个产出之间是关联的,都是为了让网络请求这件事情变的简单,其实中间还用过Sourcery
来解决Codable
重命名字段名的时候需要将所有不需要重命名的字段放到CodingKeys
的问题,但是最近更新的Xcode 14
里面解决了这个问题。(被官方卷没了,唉...)
要更加努力呀!
Let's be CoderStar!
参考资料
[1]APIService: https://github.com/Coder-Star/APIService
[2]iOSToolKit.dmg: https://github.com/Coder-Star/JSONConfig/blob/main/iOSToolKit.dmg?raw=true