为什么不能通过类似 draw.io 这样的原型工具拖拖拽拽组件来直接生成系统?
通过拖拽生成软件产品,开发成本趋近于 0 ?
数字中台,降低开发成本,提高开发效率。
以上数据 /逻辑 /UI 各个层面都是业务解耦,业务耦合是产品设计者拖拽过程耦合到软件产品的。可拖拽系统是业务无关的,应该是个工具,或者工厂,好比 draw.io 这样的软件产品,具体画出来什么图是画图的时候决定的。
产品设计者,拖拽挑选的前端模块,绑定挑选的后端模块,再绑定挑选数据模块。
正常开发过程:产品设计 -> 开发 -> 测试发布 -> 更新迭代 -> 产品设计 ……
可拖拽过程:产品设计(拖拽) -> 测试发布 -> 更新迭代 -> 产品设计(拖拽) ……
都在设计,编程不需要了……
1
CBS 2020-06-24 14:35:35 +08:00
这东西本身就不好搞,加上性能体验交互各种问题。
(主要是做了工作就么的,所以程序员不做这东西) |
2
Vegetable 2020-06-24 14:37:41 +08:00
挑剔老生常谈了,技术改变的只是编码的形式,而无法改变工程师的本质
|
3
Vegetable 2020-06-24 14:38:10 +08:00
*标题老生常谈
|
4
fanfou 2020-06-24 14:40:28 +08:00
嗨,这我做过基于 uml 的
|
5
reus 2020-06-24 14:45:18 +08:00
那谁来开发可拖拽系统呢?
还是说你这个可拖拽系统自举了,自己开发自己? 我一句话说完的事情,你还要拖拽? |
6
wysnylc 2020-06-24 14:45:25 +08:00
用乐高做房子拖过来堆起来就好,还要施工队干嘛
|
7
matrix67 2020-06-24 14:46:58 +08:00
这不就是这个里面说的。。https://v2ex.com/t/681272
|
8
murmur 2020-06-24 14:48:29 +08:00
拖拽开发简单的 curd 业务是可以的,经不起毒打
|
9
chanchan 2020-06-24 14:48:35 +08:00 via Android
老普元了
|
10
lonelymarried 2020-06-24 14:49:40 +08:00
谷歌、微软都没出这种,是有原因的
|
11
miv 2020-06-24 14:55:02 +08:00
这种在某一些业务上可以有很大作用。
比如说 BI,需要出什么图形,自己拖,后面跟上数据接口就完事。 不过,如果复杂的业务上来说,成本是非车大的。 1.如同你上面说的,业务层需要解耦,扩展性要好,这就要求设计的时候需要考虑到后面的场景,如果业务一变动,直接就 GG 。 2.产品都是在迭代中升级的,所以,一开始就把以后的都设计好、解耦出来,这个本身就比较难,不然,就不需要花需求分析、产品设计、UI 设计等,这一整个链条的人才了。 3.综上,在一个比较垂直,并且业务变动不大的领域我感觉是可行的,这要求有相对丰富的设计和开发经验。如果这是一个比较宽泛的产品,企图包含各行各业,并且要求抽象业务出来,那我不太看好。 |
12
miv 2020-06-24 14:59:26 +08:00
[产品设计者,拖拽挑选的前端模块,绑定挑选的后端模块,再绑定挑选数据模块。]
这句话我认为楼主忽略的数据处理的难度。 有的时候,数据并不是简单的直接从数据库、接口可以直接获取并利用。 |
13
Jooooooooo 2020-06-24 15:01:15 +08:00
你猜猜有了 ps 这么强大的工具后为啥还需要设计师呢?
|
14
nianyu 2020-06-24 15:03:45 +08:00 1
只适合套路模版化的东西。遇到复杂多变的需求无非自定义一堆然后坑了一代又一代
|
15
liunian1004 2020-06-24 15:05:28 +08:00 via iPhone
元编程也要编程。
|
16
php01 2020-06-24 15:14:47 +08:00 5
怎么就这么多人想让程序员失业呢。。。。
|
17
Mark24 2020-06-24 15:16:50 +08:00 8
以前用过白鹭的拖拽游戏引擎做过 Hackathon
宣传广告上号称拖拖就可以生成游戏,好有吸引力 当时就像着特别美好 结果肝到爆炸 1.拖拽形式的 UI,特别难做。能感受到。难于理解。界面复杂。 2.这种庞大的软件,BUG 奇多。 3.拓展性依旧不行,遵循模式。一旦你想突破——你能想象你无法办到某些事情,你不得不在 Input 框里注入代码么 4.这种软件用了超过 24h,掉了无数头发,你会开始思考程序的本质 本质依然是造程序,UI 只不过是个壳子。 我想出一个词儿——逻辑守恒。 就像能量守恒一样,你想要造出的东西,不管你用什么工具,逻辑必然也守恒。 UI 可能帮你做了一些场景。 但是完全自己设计的场景,需要的是灵活的支持。 这时候,其实你就会发现,能够完成需求本身的工具——就是编码语言本身。无他。 其他能做到的,就是编码语言的逻辑等价,或者子集。 然后我就觉得,这些玩意都是虚的。没什么卵用。 如果真的有比 计算机语言还要好的工具,这些语言造就成摆设了。之所以 30 年以来,语言还是主力。只能说明,目前没有更优秀的解决方案。 太阳下面没有新鲜事,很多的想法,无码化,不是今天才被提出,已经被很多人实现过又抛弃。 只不过人们不断一次又一次重演历史。 虽然我自己目前也做前端。什么中台,无码化,假的,KPI 而已。你问他们,他们自己信么? 无非是,一件事情拆成 2 件事情做,简单的事情变成复杂的事情做。 如果小公司也学,那就可笑了。没有大公司的钱,可是得了大公司的病,会被自己内耗死。 业内已经形成不良风气,为了追求影响力,发明新词,不断地新瓶装旧酒,十分没意思。大家要擦亮眼睛 |
18
chendy 2020-06-24 15:16:55 +08:00
拖拽一时爽,重构那啥啥
套路固定的领域很适合这种东西,甚至都不用拖拽 套路多变的领域快速出 demo 或者代码生成也行,长期肯定不用 |
19
laminux29 2020-06-24 15:18:56 +08:00
|
20
tcpdump 2020-06-24 15:27:19 +08:00
说个笑话,美军的中台战略
|
21
miao666 2020-06-24 15:32:20 +08:00 via Android
一个复杂点的 SQL 拖三天未必能拖出来
|
22
Phariel 2020-06-24 15:34:35 +08:00
你这个想拖拽就能完成目标的想法 十六七年前就有人想过做过 你想想为什么到了今天这个目标还没有实现?
给你举个例子 .NET 的 Web Forms Initial release 2002; 18 years ago Initial release 2002; 18 years ago |
23
splendone OP @miv 确实我忽略了数据处理的难度,这里我想当然了,不过现在拍脑袋先想一想,看这样是否可行:
将数据处理的流程抽象成逻辑模块的拼接,处理完数据再绑到前端,就是说前端绑定的逻辑模块使设计者自己通过更细化的逻辑模块拼凑的,换句话说,拖拽者拖拽的使逻辑,好比程序员敲代码,换了一种形式,改成拖拽逻辑模块了,最粗粒度的拖拽是,这是订单模块,这是支付模块;最新粒度的模块是打回原形,程序员敲代码了。 |
24
liprais 2020-06-24 15:41:28 +08:00 via iPhone
这东西雾件了多少年了,随便你做,做的出来算我输
|
25
splendone OP @Mark24 我也找过一些拖拽的系统,确实前端拖拽很方便,但是逻辑拖拽和数据拖拽就不好办了,如你所说第 3 条所所,注入代码是不行的,这部分代码也需要可以拖拽,让设计者拖拽一块逻辑绑定到前端组件上才完成的可拖拽。确实逻辑可拖拽太抽象了,是否有可能,把程序员一个字符一个字符的敲代码来表达业务逻辑的过程,改成拖拽逻辑模块,这个抽象的过程是否可行,是否有意义(提高效率),我也不是很确定的……
|
26
kvkboy 2020-06-24 15:47:29 +08:00
简单的都好办,大学生的问卷调查啊,行政的请假流程,财务的报表,基本只是普通的数据库操作,用这种低代码平台确实很方便,但凡复杂一点,都不用很多,一点点,就发现这玩意没卵用....(来自也要准备搞低代码平台,调研了两天的匿名者内心吐槽
|
27
Chen332076 2020-06-24 15:49:16 +08:00
所以催生了一个新的职业叫“数据拖拽工程师”?
|
28
bilibilifi 2020-06-24 15:51:12 +08:00 via iPhone
感觉像是 formal method. 开发确实特别快,但是对设计人员的要求过于严苛
|
29
splendone OP |
30
xwhxbg 2020-06-24 15:54:01 +08:00
你想多了,你以为产品和领导会自己动手拖么?还不是要我们码农帮他煮好饭喂到嘴里,然后我们发现拖拽还不如直接写代码呢,又回到写代码了
|
31
Yoock 2020-06-24 15:59:23 +08:00 via iPhone
这种东西做不到图灵完备😆
|
32
splendone OP @kvkboy 低代码平台前面 @matrix67 有提到,可以参考一下 https://v2ex.com/t/681272
我之前的问题 https://www.v2ex.com/t/639230,也有很多朋友回复推荐相关产品。 |
33
rockyou12 2020-06-24 16:06:30 +08:00
我觉得不现实,人人都会 if 、for 来写控制逻辑后,搞这些玩意才靠谱。拖拽做业务其实是非常非常低效的,写过过 html 的人再去用其它的拖拽画前端界面就感受得到,开发效率首先就不在一个层次。拖拽对生产级别的开发始终只是辅组。
|
34
javaWeber 2020-06-24 16:25:01 +08:00
这种破玩意,出了 bug,找到你哭都找不出来。。
你用个开源的技术,一搜索一大堆答案。 |
35
ksssdh123 2020-06-24 16:27:36 +08:00
历史已经告诉你,拖曳式的结局->dreamweaver
|
36
ppgs8903 2020-06-24 16:34:47 +08:00
刚做了一个,拖拽可配置的中台系统,结论后续基本没办法维护,你需要写好多东西保证这东西不是环。
咋说呢,如果你只要个流程那就做,如果你要流程,要配置,要校验,要 xxxx 。你用拖拽图简直是找死。 不是说做不出来,维护成本几何级别上升。 |
37
eGlhb2Jhb2Jhbw 2020-06-24 16:39:54 +08:00
之前待过一家是做类似的平台,然后卖授权的。
问题很多,不能做的那么完美。简单说两个,第一个是因为高度抽象,逻辑层支持的比较的简单,不能每一个 if 都拖一个线框图出来,所以只能 append 一些用户可自定义脚本。经常有一些逻辑错误在脚本中,很难 debug 。第二为了保持一定的可定义性,基本都是原本概念 UI 化,比如“字段”、“视图"、“实体”等,这就导致了不经历一个很晦涩的培训是不会使用的,上手难度较高。 |
38
kop1989 2020-06-24 16:46:33 +08:00 1
拖拽式其实也是在“编程”。
只不过从写英文改成了拖拉拽,但依然表达的是业务数据化,数据信息化的逻辑。 这就跟你说键盘是不是终结了纸带程序员?不是,纸带时代优秀的程序员用键盘会更优秀。因为效率提升了。 你会担心电起子的出现让当前用改锥的电工丢掉工作么?只能会让电工更有效率的工作而已。 更何况你说的“拖拉拽”其实是一种效率的下降。 从开车变成了骑自行车,从需要驾照变成了不需要驾照。看似好像谁都能骑,但是开车是个人就能跑到 120km/h 。 与其余寄希望于拖拉拽,不如寄希望于脑机 IO 或者是 ai 业务学习。 |
39
jswh 2020-06-24 16:48:48 +08:00
scratch ?
|
40
wupher 2020-06-24 16:53:40 +08:00 2
在职业生涯中不幸多次参与类似项目。
从一键生(成)表,一键建站,业务原语,后端模块化,最后到 App 应用工厂。 从 CS 的 VC++ 到 BS 到纯后台,再到 App 端,众多血泪。 感觉国人特别喜欢这个,可惜,无论是我先后就职过的公司,到业界,都没有成功的产品。印象里,有半成功的产品,360 有搞过一键建站,但也就那样。 你猜原因是什么 ? |
41
KingPL 2020-06-24 17:00:42 +08:00
我看评论精彩多了
|
42
miv 2020-06-24 17:03:47 +08:00
@wupher 老哥感触很深,其实我们之前公司也是弄个类似的,老板主张弄一套,针对某一个行业。
后面发现拖拽的时候,涉及到字段匹配、逻辑判断这些问题,基本是很麻烦处理起来,后面也没做起来。 当时开发的时候,感觉一言难尽,自己尝试用了下自己开发出来的这套软件,难用的一匹,而且功能也达不到,太难了。 如果,真的有好用的产品,滴滴我,我还是会瞅一瞅的。 |
44
Mark24 2020-06-24 17:06:30 +08:00 2
看到各种经历。这个帖子具有历史价值。
后人哀之而不鉴之,亦使后人而复哀后人也。 |
45
kemistep 2020-06-24 17:10:14 +08:00
这么说吧:quickbi 、 帆软等等一系列的 BI 工具,不都是你这个具体化嘛? 可以搜一下 BI 工具,看看是否满足你
|
46
wangyzj 2020-06-24 17:10:54 +08:00
你是不是没被产品经理毒打过?
|
47
kemistep 2020-06-24 17:11:54 +08:00
技术不是难点,难的是业务,以及基础的宽表,和多维度的分析;
报表不是展示好看的,是为了解决一些列的问题而存在的; 现在大公司的底层宽表,100 以上的字段宽度,依然满足不了业务需求, 业务的复杂性,不是这么简单的 |
48
kemistep 2020-06-24 17:15:04 +08:00 1
@miv 部分公司在做这块,比较好的就是:growing IO 诸葛 io 等相关公司,开始做这块,但不是拖拽; 拖拽是结果展示层,主要还是底层的业务要处理好,以及有一套业务框架,解决通用问题;
|
49
HeyWeGo 2020-06-24 17:17:27 +08:00
www.pinterest.co.uk/alexdrinkwater/node-based-development-environments/
很多复杂软件里,都会有这种节点式的操作方式。我感觉这算是一种中间形态 |
50
youyouyou0123456 2020-06-24 17:18:38 +08:00
做过,也用过其他一些拖拽系统,国外不少公司有这种产品,阿里百度也有拖拽的系统。但是这种东西没办法通用,一般在特定的业务领域比较好做,效果的话,就是凑活,我觉得给业务用在一些不是特别重要或者内部系统上还挺好使。
|
51
soulmt 2020-06-24 17:34:55 +08:00
做过 ios 开发的话可以看看 swift 那拖拽功能都牛逼成什么样了,不依然需要代码开发, 拖拽只能解决重复性,可预见的功能, 增量可变,搞不了的,除非你写个机器人帮你写代码
不过我认为这是趋势, 将来前端应该是面向这类工具开发, 重复造轮子的日子,已经 没多久了。到时候也会洗牌前端,可能会出什么前端运营类似的职业吧 |
52
BadAngel 2020-06-24 17:46:25 +08:00
@laminux29 仅个人随便乱想,模块化项目开放固定类型的接口,添加这类需求以插件或者 mod 的形式:1.前端模块上加个皮肤 mod ; 2.网络模块上加个防火墙组件; 3.K8S 的 NODE/POD 已经可以在后台实现了吧。
|
53
inwar 2020-06-24 18:59:45 +08:00 via Android
程序系统设计一定意义就是建模,目前应该没有人能抽象出图形化的通用语言,可能通用到一定程度就会到文字编程语言一样的复杂度。建模的层次和范围限定了它的适用性,比如中间件,比如 arduino 的图形编程
|
54
pabno 2020-06-24 19:14:41 +08:00
产品经理的脑回路你是抽象不出来的
|
55
xyjincan 2020-06-24 19:37:44 +08:00
那大佬拖个微信,淘宝,京东吧
|
56
XanderChen 2020-06-24 20:30:39 +08:00
你去找 Microsoft 出品的 blend for visual studio 看看,专门用来设计 wpf 或者是 uwp 界面的工具。
别的也行,其实这种拖拽控件生成界面的工具已经有一大把了。 希望你能做出一款真正能不用写后台代码来实现各类功能的工具吧。 |
57
murmur 2020-06-24 20:32:31 +08:00
@XanderChen 不写代码实现各种功能有的是,国产所谓快速开发平台一大把一大把
这东西他是有场景的,国企什么都讲究合规,都得有个审批,今天用车,明天用船,后天用章,大后天用啥,这业务一天都没几个人用,可能就那几个人用,那这功能要写代码干嘛,拖拖拽拽上线不是最方便,不做索引坚持个几年都不带卡的 |
58
cedoo22 2020-06-24 20:37:21 +08:00
我记得 10 年之前 IBM 就有类似 通过后台管理界面点点点,直接生成系统页面和流程的一个技术, 复杂而且界面难以描述。
|
59
momocraft 2020-06-24 20:40:13 +08:00
rpg maker
|
60
singerll 2020-06-24 20:46:34 +08:00 via Android
不是不用,是不用低级程序员了,像几万块的小项目完全不用开发了。就像云计算推的数据库智能管理,大公司是用不着,小公司完全可以抛弃 dba 了
|
61
XanderChen 2020-06-24 20:57:05 +08:00
|
62
murmur 2020-06-24 21:01:05 +08:00
@XanderChen jeecg,我知道的有这个,开源的,还别说各种国产定制的,连我们公司都开发出配一下就上功能的东西来,这东西很难实现么,都不用什么 nosql 动态 scheme 这么高端的技术,各种基础字段预留他一堆,什么 int1-int10,string1-string10,就可以搞定
|
63
XanderChen 2020-06-24 21:31:11 +08:00
|
64
murmur 2020-06-24 21:43:41 +08:00
@XanderChen 那你就是纠结概念么,我只是想告诉你除了可以拖拽界面,功能也可以拖拽
---------- 然后下面是回楼主的,本身中台就是个折腾出来的概念,前台后台不够炫酷,里面东西一多就想分层,所以折腾出一个中台来 那么有没有拖拉拽就能把一个东西覆盖大量需求,而且稳定可靠高性能而且做到行业标准呢 答案是有的,要求很高 1 、首先每个模块要封装的足够先进,因为组合到一起,任何一个模块出问题都会成为系统瓶颈 2 、这个产品要能覆盖行业的大量需求 那么,这个东西就是最近热门讨论的,matlab 的 simulink,真的拖拉拽做实验,不写代码,而且性能不差 |
65
XanderChen 2020-06-24 21:57:38 +08:00 via Android
|
66
Cbdy 2020-06-24 22:05:07 +08:00 via Android
复杂度不会凭空消失,只会从一个地方转移到另一个地方
|
68
mreasonyang 2020-06-24 22:14:03 +08:00 via iPhone
简单的 M 端管理系统我觉得没问题而且现在也已经有一些方案可用了。但非 M 端的系统对性能和体验是有要求的,对于自动化系统来说这种调优能力即使是未来也很难实现。另一个就是业务逻辑复杂的系统,复杂到流程图能画两三页、各种状态机流转,这种业务如果用可视化的方法去拖拽我觉得和写代码也没什么区别了,调试和维护体验上还不如写代码,所以这种场景也是不适合的。
|
69
vincent321 2020-06-24 22:53:22 +08:00
拖拽做出来的东西 不够强大
|
70
glfpes 2020-06-24 23:25:39 +08:00 via iPhone
当年用 vs 拖过控件,但稍微熟悉一下就放弃使用拖拽式而直接编辑 xml 了,原因很简单:拖拽式只能最简单实现功能,稍微需要定制这些自动生成的代码可读性和编辑效率就很差。
|
71
love 2020-06-25 04:41:22 +08:00 via Android
编程信息逻辑本质无法压缩,把操作性强可版本化高可靠性的文本形式,等量转化成操作繁琐不能版本化的拖 ui 方式,这图啥啊
|
72
laike9m 2020-06-25 04:43:25 +08:00 via Android
相对于你提到的这种抽象,个人觉得 dark lang 现在的做法更可能是未来业界的发展趋势
|
73
leishi1313 2020-06-25 05:30:14 +08:00
老是在这站里看到满是各种名词堆砌,但是一点逻辑不讲的帖子
|
74
leohxj 2020-06-25 11:18:16 +08:00
可视化搭建是一个大家都能想到的中台方案而已,可用性看怎么吹了。
|
75
MoccaCafe 2020-06-25 11:24:06 +08:00
甲方只想告诉你需求,不想自己亲自用“可视化”去搭建系统,就算再智能再合理,终究是需要人手去做的
|
76
MoccaCafe 2020-06-25 11:25:29 +08:00
在资本面前,人其实是非常智能的机器,比所谓的中台可视化搭建什么的高级不少,还能随时沟通协调修改,而且费用相对来说也不是很高
|
77
herozzm 2020-06-25 12:32:28 +08:00
历史中出现过类似的拖曳设计,早期的微软开发套件和 dreamweaver 等都是这样干,还有一些 web 网站生成系统也是这样刚,生成的冗余代码实在太多了,已经被历史淘汰
|
79
abelmakihara 2020-06-25 19:18:52 +08:00
|
80
whywhywhy 2020-06-25 21:28:18 +08:00
刚才看了下金蝶 CLOUD 的 BOS,就是无代码设计界面和 ERP 功能,自己就能把 ERP 一个个的单据配出来。
讲师在操作的时候,我看了下,它把 ERP 用到的功能拆分成很细的配置,配置一个单据还是麻烦的,但是感觉到一个好处,就是代码不用开放了,用户也能自己通过配置实现各种功能。。。。 但是遗憾的是,价格贵,配置复杂,具备这个能力的,或许自己就写代码搞定了。。。 |
81
whywhywhy 2020-06-25 21:30:01 +08:00
说真的,各个软件最核心的不是拖拽控件,还是背后的代码,拖拽只是第一步,要是能在拖拽的背后,无代码让用户配置,这样才算厉害的。
|
82
yangbonis 2020-06-25 22:26:15 +08:00 via iPhone 1
拖拽本身不也是一种码代码吗? 拖拽真的比写逻辑简单吗?
|
83
ericls 2020-06-26 00:58:12 +08:00
楼主忽略了最大的一点,拖拽也是编程。
只是用了一种不大常规的编程语言而已。 不会写代码的人也不会拖拽。 |
84
CuVee 2020-06-26 01:22:26 +08:00
这玩意用是好用,然而开发成本太大
我之前的 2B 公司就是玩的这个 |
85
buhi 2020-06-30 16:46:53 +08:00
拖拽还太复杂了, 不够简便, 应该有一种通过语音就能直接编辑业务逻辑的工具, 可见老罗的 TNT 超前了业界十年!!!!老罗🐂🍺
|