关于DSL领域模型的总结

39 阅读1分钟

前言

跟着抖音哲玄大佬做的一个elpis项目,里程碑三阶段性总结,里程碑三是项目最核心的部分

核心框架

image.png 以该设计为主要模型

什么是领域模型

DSL(Domain Specific Language,领域特定语言 )领域模型是为特定业务领域定制的语言及配套模型体系,聚焦解决该领域的问题。

为什么用领域模型

主要目的是为了解决项目中重复业务场景、组件开发,一定程度上摆脱繁重的crud。可以减少80%的重复性工作,加20%的功能定制, 可以通过一套配置(模版)生产一个目标项目。

核心设计

通过json-schema。来设计模板页,渲染出整个站点,通过数来据驱动,基础配置也可被多个项目继承和扩展,支持沉淀重复开发内容,同时也可以加入一些定制化内容,一个领域模型可以衍生出若干个项目,领域模型项目的关系是对象继承关系,项目(子类)继承于领域模型(基类),领域模型可以沉淀各个项目中重复功能/页面,实现复用。

image.png 通过json-schema的数据配置对应解析出页面的所有组件,以此来快速开发页面和项目。