是直接使用字典来处理数据呢还是创建对应的Model来处理数据
在群里讨论的时候讲到,有些人是直接使用字典来处理数据的,而我偏向于使用对应的Model。他们认为为每一个数据创建Model太浪费时间了,我认为使用字典的话维护性很低,可读性也很低。虽然需要花费时间去创建model,然而这个model并没有多复杂,而且也可以使用自动化工具来创建。
使用字典 使用Model
增加了字段 在使用处增加 在Model中增加,在使用处使用
删除了字段 在使用处删除(但是没 在Model中删除,在是用处删除(会有编译器
有警告提醒还有没删除 警告)
的地方)
修改了字段 在使用处修改(多处) 在Model中修改
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
优劣问题虽然没有绝对的判断,但一个粗略的感觉还是可以有的。
最简单的一个依据就是:活数据用Model,死数据用字典。
Model就是业务数据,每天走流水,添加删除频繁的。死数据就是常年不更新的固定条目,例如全国政区表、世界时区表。
就算用字典,也不要完全写死:
另一个想法就是:Model if you can, dictionary if you must. 总用Model肯定没有错,字典只用来最小限度的解决性能问题。
个人感觉这样的问题,一般都是经验作答,2种方式通过分析来辩论,不如付诸实践,通过具体的业务来检验优劣,单一简单架构的我倾向字典,放到具体的业务对象里用model
像这种优劣问题都没有绝对的答案,必须在给定的环境下才能得到满意的解决。
我比较赞同 @simapple 的回答,他给出了比较中肯的解释。
这个东西会有帮助的 http://liming.me/2014/01/16/dynamic-object-mapping-for-json/
利用objective-c的动态特性自动映射字典的键值对到Model的属性上