文件名称:Mantle:Cocoa 和 Cocoa Touch 的模型框架-开源
文件大小:115KB
文件格式:ZIP
更新时间:2024-08-09 13:08:42
开源软件
Mantle 使为您的 Cocoa 或 Cocoa Touch 应用程序编写简单的模型层变得容易。 Core Data 很好地解决了某些问题。 如果您需要对数据执行复杂的查询,处理具有大量关系的巨大对象图,或支持撤消和重做,Core Data 非常适合。 如果您只是想访问一些 JSON 对象,那么 Core Data 可能会做大量工作,但收获甚微。 尽管如此,如果您已经在应用程序中使用或想要使用 Core Data,Mantle 仍然可以作为 API 和托管模型对象之间的方便转换层。 为了将模型对象从 JSON 序列化或序列化为 JSON,您需要实现在您的 MTLModel 子类中。 Mantle 不会自动为您保留对象。 但是,MTLModel 确实符合,因此可以使用 NSKeyedArchiver 将模型对象存档到磁盘。
【文件预览】:
Mantle-Mantle-bbe0cbe
----Mantle.xcodeproj()
--------xcshareddata()
--------project.pbxproj(110KB)
----.gitignore(270B)
----Mantle()
--------MTLValueTransformer.m(4KB)
--------NSDictionary+MTLMappingAdditions.m(573B)
--------NSDictionary+MTLManipulationAdditions.m(1000B)
--------NSError+MTLModelException.m(1021B)
--------MTLReflection.h(1KB)
--------NSObject+MTLComparisonAdditions.m(397B)
--------Info.plist(806B)
--------MTLModel.m(10KB)
--------NSArray+MTLManipulationAdditions.m(905B)
--------NSValueTransformer+MTLInversionAdditions.m(1KB)
--------NSDictionary+MTLJSONKeyPath.h(1003B)
--------NSError+MTLModelException.h(613B)
--------include()
--------MTLJSONAdapter.m(23KB)
--------MTLModel+NSCoding.m(10KB)
--------NSValueTransformer+MTLPredefinedTransformerAdditions.m(18KB)
--------extobjc()
--------NSDictionary+MTLJSONKeyPath.m(1KB)
--------MTLTransformerErrorHandling.m(474B)
--------MTLReflection.m(2KB)
----Cartfile.private(104B)
----LICENSE.md(2KB)
----CONTRIBUTING.md(1KB)
----CHANGELOG.md(7KB)
----Mantle.xcworkspace()
--------contents.xcworkspacedata(340B)
----.gitmodules(526B)
----.github()
--------workflows()
----ACTIONS.md(3KB)
----README.md(17KB)
----Cartfile.resolved(137B)
----Cartfile(0B)
----Mantle.podspec.json(750B)
----Package.swift(589B)
----MantleTests()
--------MTLJSONAdapterSpec.m(22KB)
--------MTLModelValidationSpec.m(1KB)
--------MTLTestJSONAdapter.m(693B)
--------MTLArrayManipulationSpec.m(2KB)
--------MTLTestJSONAdapter.h(383B)
--------MTLDictionaryManipulationSpec.m(2KB)
--------SwiftSpec.swift(421B)
--------Info.plist(733B)
--------MTLValueTransformerInversionAdditionsSpec.m(1KB)
--------MTLPredefinedTransformerAdditionsSpec.m(12KB)
--------MTLTestModel-OldArchive.plist(557B)
--------MTLTestModel.m(12KB)
--------MTLModelNSCodingSpec.m(4KB)
--------MTLTestModel.h(6KB)
--------MTLComparisonAdditionsSpec.m(1KB)
--------MTLTransformerErrorExamples.m(3KB)
--------MTLModelSpec.m(7KB)
--------MTLDictionaryMappingSpec.m(600B)
--------MTLErrorModelExceptionSpec.m(778B)
--------MTLValueTransformerSpec.m(2KB)
--------MTLTransformerErrorExamples.h(467B)
----Carthage()
--------Checkouts()