gpt4 book ai didi

json - 是否可以减少 swift 可编码协议(protocol)的样板代码

转载 作者:行者123 更新时间:2023-11-30 10:44:30 24 4
gpt4 key购买 nike

Codable 很棒,它是唯一允许 NSMangedObject 模型分别来回序列化为字典和 JSON 数据的 json 解析解决方案之一。

唯一的问题是,涉及大量样板代码,因为您必须提供编码键的枚举以及必须为所有属性编写的编码和解码方法。

有什么方法可以减少样板代码。我尝试使用 Mirror api 来推断所有属性键及其类型,以便为实现它的任何类动态生成可编码协议(protocol)的编码和解码方法。但是 Mirror api 不够强大,因为它有时无法提供正确的类类型,并且根本不包含有关 NSManagedObject 类型的信息。

由于可编码是常规快速使用不可或缺的一部分,我想知道是否可以采取一些措施来减少样板代码。

最佳答案

NSManagedObject类中,不能使用Codable合成协议(protocol)扩展。

原因是您必须调用指定的NSManagedObject初始值设定项之一,以将新对象插入到托管对象上下文中。

关于json - 是否可以减少 swift 可编码协议(protocol)的样板代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56045864/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com