ios – 用于映射核心数据的最佳库

前端之家收集整理的这篇文章主要介绍了ios – 用于映射核心数据的最佳库前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
作为开发人员,我每天都要处理数据.我需要将原始数据处理到对象(NSManagedObject)的常见问题.所以我使用AFNetworking从远程服务器获取数据,并且由于AFNetworking工作,我有一个可以由NSDictionary表示的数据.因此,需要做大量工作的主要事情是将原始数据转换为具体的数据模型.因此,互联网上有许多图书馆可以为我们做这项艰苦的工作:

MagicalRecord MagicalImport

Mantle

EasyMapping

因此,作为一个新的映射,我想知道哪个库最适合我的目的.也许你也可以建议另一个.

解决方法

您提到的每个库都有不同的用途:

MagicalRecord – 简化了常见的核心数据操作(获取,插入,删除,设置堆栈等).它不处理将JSON或任何其他格式映射到Core Data模型.通过@casademora进行更正:MagicalRecord可以使用here描述的步骤处理带有自定义映射的导入.也就是说,MagicalRecord是一个相当大的库,仅用于此功能.

Mantle – 极大地减少了Objective-C中模型对象的样板(自动实现NSCoding,NSCopying,-isEqual:/ – hash等).包括MTLJSONAdapter和MTLManagedObjectAdapter等适配器,用于在模型对象的表示之间进行转换.这听起来像是最适合你想要达到的目标.如果在MTLModel子类上实现MTLJSONSerializing和MTLManagedObjectSerializing协议,则可以将Web API中的NSDictionary响应(可能是JSON数据)转换为Core Data模型对象.

EasyMapping – 我自己没有使用过这个库,但看起来它提供了一小部分Mantle的功能,纯粹用于在各种模型表示之间进行转换,除了它使用映射模型(EKObjectMapping)而不是子类化基本模型类.使用这个库的缺点是它不像Mantle那样处理任何其他Objective-C模型对象样板.

在提到的3个图书馆中,我认为Mantle可能最适合你描述的内容.另一个选择是使用RestKit,它提供比任何这些库更严格的REST API /核心数据集成,但是使用和调试更加困难.

猜你在找的iOS相关文章