一个框架&一个工具

2022-09-23 08:58:38 浏览数 (1)

前言

Hi Coder,我是 CoderStar!

距离上一次发技术文已经挺长的一段时间了,这段时间各种各样的事情挺忙的,所以也没有专门抽时间来写文章了。(其实还有一部分原因是心态的变化)

稍微介绍两个这段时间的技术产出吧。

APIService

如果是我微信好友的小伙伴,估计已经在我朋友圈看到我分享过,在这里就简单介绍下吧,具体细节可以去repo看文档以及代码。

APIService 是一个轻量的 Swift 网络抽象层框架,将请求、解析等流程工作分成几大角色去承担,完全面向协议实现,利于扩展。

github 链接:APIService[1]

如果有兴趣的小伙伴可以了解下。

iOSToolKit

因为新的网络框架默认使用官方的Codable作为JSON序列化工具,之前使用的JSONModel工具对此支持的不是特别好,所以我自己简单撸了一个,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

0 人点赞