V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
tctc4869
V2EX  ›  程序员

Java web 如何搭建低代码开发模式或架构?

  •  
  •   tctc4869 · 2019-10-14 11:38:33 +08:00 · 2086 次点击
    这是一个创建于 1627 天前的主题,其中的信息可能已经有所发展或是发生改变。

    低代码开发和无代码开发的产品出来不久了,比如简道云这种,但是这些是基于第三方,数据也在第三方服务器中。我不放心,我自己也想搭建一个低代码开发应用,主要的目的为自己是以后开发一些简单或常用的业务模块想省一点时间,比如表单提交,增删改查的表格,数据统计,单文件上传等把这些常用的操作界面抽象化模板,甚至是前端写数据库查询操作语句或数据验证 js 代码,并通过鼠标点点点与 ui 控件的事件进行绑定等。

    目前自己已经有一些架构设想,但仅仅只是 c/s 端,如果仅仅是面向 c/s 端的低代码开发还好说,抽象出常用的界面类型或者基于模板界面,所要用的数据类型,建立可视化拖放功能,抽象出常用的持久化方法。ui 控件事件和持久化方法绑定关系的功能,控件事件绑定自定义数据验证代码的使用。可以自主决定建立数据和可视化生成 ui 的前端代码的显示内容的绑定关系,生成的 ui 代码存到嵌入式数据库或者文本文件中。

    但如果是 b/s 端上做一个低代码开发,而且还是 java web 方面,基于 jsp,css,JavaScript,想要开发一些简单的模块而省时间,而且可能得配合权限系统(几个人的团队配合开发的话),一种考虑是用代码生成器,虽然自己开发了一个 windows 上面的代码生成器,使用这个虽然方便了不少,但总感觉还是有点麻烦,想要更方便一些。最近才了解到有低代码开发这种理念。不过既然要用低代码开发,那么就得开发可视化拖放控件代码生成功能。

    这种 b/s 端方面的低代码开发的模式,如果要在 java web 中实现,首先架构,是怎样的?有什么设计思路吗,存储低代码开发产生的 ui 代码,用 sql 还是 nosql 存呢,用哪种类型的数据库存?适合的 js 框架是什么?

    4 条回复    2019-10-17 10:10:29 +08:00
    deep777blue
        1
    deep777blue  
       2019-10-14 14:00:40 +08:00
    你这种情况下,一般软件公司底层框架就会这么考虑,如果个人去开发一个这样子框架 成本肯定是很大的,不过可以尝试。
    tctc4869
        2
    tctc4869  
    OP
       2019-10-15 16:38:14 +08:00
    有人有思路吗?
    tctc4869
        3
    tctc4869  
    OP
       2019-10-17 09:09:59 +08:00
    @deep777blue 问题是很多快速开发框架,都是基于操作代码生成器来搞的,这个我是最不放心的。代码生成器这种东西我觉得只能用在局域的代码生成,效果很好,但如果要生成一个业务模块的代码,并用于简单的业务模块,那或多很少都有很多问题。如果不是我自己开发的代码生成器,我是不会放心使用地

    我目前比起期待的理想的 b/s 快速开发框架,就前端方面而言,是支持可视化拖放,基于可扩展的模板页面,绑定前后端交互的接口字段和模块名。选中拖放后的 ui 控件,可以对事件可以添加 js 自定义数据验证方法的绑定,绑定表单提交的方法,或者甚至前端写数据库的增删改查的语句命令,并与 ui 控件的事件进行绑定,而这些都可以通过鼠标点点,输入少量的文字和代码就可以轻松完成一个简单的业务。对于关键,复杂,需要定制化的业务模块,可以自己进行专门的定制编码。我目前还没有发现这类快速开发框架。不过这种开发方式一般都是针对 CMS
    deep777blue
        4
    deep777blue  
       2019-10-17 10:10:29 +08:00
    @tctc4869 我司底层框架目前就是通过自研的代码生成器 生成对应的业务模块的增删改查,效果还是不错的。你说的拖拽可能效果会更加灵活,但是对于整体页面的统一度不好把握的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1061 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 18:58 · PVG 02:58 · LAX 11:58 · JFK 14:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.