开发者社区> 问答> 正文

是直接使用字典来处理数据呢还是创建对应的Model来处理数据

在群里讨论的时候讲到,有些人是直接使用字典来处理数据的,而我偏向于使用对应的Model。他们认为为每一个数据创建Model太浪费时间了,我认为使用字典的话维护性很低,可读性也很低。虽然需要花费时间去创建model,然而这个model并没有多复杂,而且也可以使用自动化工具来创建。

                使用字典                      使用Model

增加了字段 在使用处增加 在Model中增加,在使用处使用

删除了字段 在使用处删除(但是没 在Model中删除,在是用处删除(会有编译器

             有警告提醒还有没删除        警告)
             的地方)

修改了字段 在使用处修改(多处) 在Model中修改

展开
收起
a123456678 2016-07-20 17:43:56 2243 0
1 条回答
写回答
取消 提交回答
  • 优劣问题虽然没有绝对的判断,但一个粗略的感觉还是可以有的。

    最简单的一个依据就是:活数据用Model,死数据用字典。

    Model就是业务数据,每天走流水,添加删除频繁的。死数据就是常年不更新的固定条目,例如全国政区表、世界时区表。

    就算用字典,也不要完全写死:

    略微遵守数据库设计的范式来。最起码key-value的二元架构还是必要的(以防由于错别字等原因,数据不变但显示文字略有改动)
    不要太粗糙,不要一个字典变量完事,而要封装为成型的helper/utility
    字典数据要动态加载,绝对不能直接硬塞到代码中(hard-code)
    另一个想法就是:Model if you can, dictionary if you must. 总用Model肯定没有错,字典只用来最小限度的解决性能问题。

    2019-07-17 19:59:08
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载