免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 7153 | 回复: 0

低代码平台技术乱弹四十三,动词算子式低代码平台的秘密,为代码生成而设计 [复制链接]

论坛徽章:
1
天秤座
日期:2013-11-07 18:39:20
发表于 2022-09-22 18:31 |显示全部楼层
本帖最后由 jerry_shen 于 2022-09-22 18:32 编辑

低代码平台技术乱弹四十三,动词算子式低代码平台的秘密,为代码生成而设计
相信对动词算子式低代码平台有印象的人们无不对这类低代码平台的弹性和适应性印象深刻。并好奇是如何做到这一点的。这就是动词算子式低代码平台的的基本原则,为代码生成而设计。这一特性不是偶然的,而是这种低代码平台刻意为之。
对任何软件,管理变与不变总是基本的考虑。对低代码平台而言,这更为重要。因为代码的不变,低代码平台才能有相对固定的设计与实现。因为变,所以低代码平台才能拥有弹性,适应不同的需求与场景。所以,对变与不变不变的管理,是低代码平台设计的核心内容。
对这种需求,关键是为代码生成而设计,什么意思,就是你需要对低代码平台的运行有整体考虑。考虑低代码平台如何变,那里保持不变。具体说来,就是变的集中和不变的集中,所以的变化,被集中于域对象,而不变的,是形形色色的动词算子。
为什么这么设计,首先,这是自然的关系,比如说 ListAll 动词,即从数据库中返回您需要的数据,您会发现,对不同的 ListAll 动作,比如 ListAllStudents 和 ListAllTeachers,不同的只是查询的数据库表不同和表征的 pojo 对象不同。而不同的 ListAll 动作完成的步骤是完全相同的。而同为 Student 对象,ListAll 动作和 Delete 动作的步骤的逻辑结构是完全不同的。所以,动词算子式低代码平台只是诚实的归纳和利用了这种逻辑关系。
第二点,动词算子和域对象的笛卡尔积生成具体的方法阵列的方法本质上是一种降维操作。他把一个二维的方法阵列降维为一维的域对象数组和一维的动词算子数组的笛卡尔积。虽然简单,但我确实没有发现更为有效的方式。
第三点,把低代码平台原子化是降低低代码平台耦合的增强它的扩展性的好办法。传统的低代码平台是以文件为单位的。这不是代码的逻辑结构。但却是代码的组织单元。所以,如果要增减功能,以文件单位为中心的低代码平台经常会牵一发动全身。而以动词算子为单位的低代码平台是原子化的,这方面的缺点就不存在了。 given.jpeg


您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP