最近在做一个仿快点阅读 APP 功能的小程序,快点阅读的阅读特点就是,故事的内容完全以对话的形式展现,人物对话 + 旁白的形式。那么在存储数据的时候,可以这样设计( 横向 )
openid |
角色 1 信息 + 对话内容 1, 角色 2 信息 + 对话内容 2, 角色 3 信息 + 对话内容 3 (以 json 字符串或者数组序列化的形式存储) |
当然也可以这样设计( 纵向 )
openid |
角色 id |
对话内容 |
openid |
角色 id |
对话内容 |
横向设计的话,那么所有的数据操作几乎都在前端完成,对于后端来说简单粗暴,然而却不利于后端对于数据的二次处理,扩展性也太差,比如我之后相对某条对话内容做评论,想对内容进行分章分节处理,那么角色的信息的编辑修改就异常麻烦。
纵向存储的话,优点就是易于以后的扩展,数据的处理也很方便,缺点就是写入频繁,在表中看起来数据量也显得很大。
从扩展性来考量的话,还是后者更适合,至于写入频繁,对服务器的压力的问题,以后通过硬件的提升就可以直接解决掉。