开发者社区> 问答> 正文

自动化统一化生产的前提一定是要有一个标准化的表达做支撑的,这个中间 DSL 该如何设计才能承载住全量

已解决

自动化统一化生产的前提一定是要有一个标准化的表达做支撑的,这个中间 DSL 该如何设计才能承载住全量的需求内容呢?另外通过什么样的方式可以让运营能接受和理解这部分的逻辑编排?

展开
收起
詹姆斯邦德00 2022-10-25 15:57:32 1348 0
来自:大淘宝技术
1 条回答
写回答
取消 提交回答
  • 推荐回答
    1. 首先我们解决的问题一定是有边界的是处在一个业务领域的,并在这个业务域下进行分析。因此我们分析了一下我们最常见的业务形态- 模块。而据统计“相同业务能力,不同技术实现”的模块在整个天马体系中的占比非常的高,单单拿通用商品坑来看就有上千个,而这些模块大部分都是相同的逻辑实现,也有很多是处于不同时期的技术产品。

    2. 一个模块在前端的开发设计里,大概可以分为4 部分,通用组件,通用Action,视觉代码,驱动逻辑。

    3. 我们可以看到视觉和通用组件以及Action 都是已经有了的,变动周期比较低。而驱动逻辑部分是是业务中的主要实现逻辑,如何让这部分逻辑能让运营进行产出呢?

    4. 首先我们将这部分能力进行一个拆解,我们得出一个初步的结构,就是由 运算符 + 表达式 + 基础action + pipeline 组成的表达结构,这个表达也可以组成一个新的action,再加上trigger,整体就完成一个workflow 的能力了。

    image.png

    new Expression = Variable + Operator + Expression + Pipeline

    new Action = Expression + Action

    Workflow = Action + Expression + Trigger

    业务模块的四个部分中,驱动逻辑就是我们主要核心产出的内容,根据我们的经验这部分ProCode 大部分都是表达式 Expression 内容。因此我们只要能让运营能够自主的完成 ProCode 部分的编排即可高级定制需求的产出物。

    让运营完成所有的ProCode 也显然是不现实的,但是对于IFTTT 这种简单的逻辑表达,只要将这部分内容的表达可以使用更接近自然语言的表达方式,自然会降低整个的理解难度。

    以上内容摘自《大促背后的前端核心业务实践》电子书,点击https://developer.aliyun.com/topic/download?id=728可下载完整版。

    2022-10-25 16:16:16
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
问答排行榜
最热
最新

相关电子书

更多
自动化、智能化网络运维 立即下载
从自动化到智能化的阿里运维体系 立即下载
小红书移动端自动化数据采集实践 立即下载