01图形编辑器设计数据层设计思路
🎍

01图形编辑器设计数据层设计思路

架构

💡
数据层的核心关键是:保证数据的正确性和可操作性
  • 架构:真实数据层 + 中间数据层 + 数据控制能力层
    • 真实数据层:后端存储的能渲染节点的最小数据,这样的数据不方便我们业务上做计算,并且直接操作原始数据操作错了,直接就产生了脏数据
    • 中间数据层【节点树结构】:通过代理层操作原始数据,我们可以做很方便的做校验、增加衍生数据,方便处理业务逻辑
    • 数据控制能力层:为保证性能和数据量的大小,我们需要增加缓存减少计算,增加基本编辑功能,版本记录等,数据发生改变需要有通知

基本能力

  • 数据
    • 页面数据
    • 节点属性
    • 文件整体的视图数据等
  • 中间层
    • 节点树
    • 节点树的增删改查操作
    • 选中节点操作&数据管理
    • 衍生数据结构:用于几何运算的临时数据
  • 数据控制能力层
    • 数据缓存
    • 数据协同
    • 历史记录、版本记录
    • 数据通知