Architecture Improvement
One of the thoughts is take a deep look at MTLJSONAdapter and combine best from both. Model & external nature of it is interesting for me.
Feel free to comment & create any new issues. AMC needs your opinion
Do you mean to say that you like the externalized mapping? I don't like that aspect. I'm using yours because it allows me to directly instantiate my model classes (plain old NSObject subclasses) from JSON much the same way that http://jackson.codehaus.org/ deserializes JSON into POJOs. NSObject-AutomagicCoding does this with no external configuration, so any directives on how to deserialize are conveniently encapsulated in the plain old NSObject subclasses. Mantle seems to require that your model classes be subclasses of their MTLModel, which is, in my opinion, not desirable.
On the contrary, I'd like to have some additional features to have finer control over the deserialization that can be coded within the target NSObject subclasses. For example:
- Provide a way to specify what class to instantiate for the elements of a nested NSArray without requiring a "class" key in the JSON. (See my first attempt at this here https://github.com/alexnauda/NSObject-AutomagicCoding)
- Provide a way to specify which model class to instantiate based on attributes in the JSON object, to support type hierarchies where the nested objects are subclasses of a common parent. (I think this is possible by overriding -initWithDictionaryRepresentation in the superclass, but a way of specifying this by implementing a class method, akin to Jackson's use of annotations, might be more convenient.)