计算机经历几十年 CURD,难道没有一个大而全的解决方案吗?

2021-07-09 16:25:41 +08:00
 heheda11

一套告诉你 CURD 操作就没有?

比如 超强 UI 脚手架。。 从 ES Redis MYSQL 一些列中间件 一键勾选自动生成,所有基本库操作

从追踪连到日志分析,性能警告

就没有这样的东西吗?

7324 次点击
所在节点    程序员
59 条回复
littlewing
2021-07-09 23:21:26 +08:00
小网站和系统有低代码可以尝试,大的系统,CRUD 只占很小一部分
JerryCha
2021-07-09 23:23:47 +08:00
C: 指 A 部门 B 角色 C 岗位具有 D 资质但不是 E 编制的人可以向 F 部门 G 角色 H 岗位且与 E 编制下 I 不存在利益关系的员工提起一个 create 操作申请,批准后交由 J 部门随机指定一名具有 K 权限的人进行创建。
BeautifulSoap
2021-07-09 23:46:31 +08:00
程序员都自嘲说只写 CRUD,但实际上想想 CRUD 是干嘛的?是用来完成业务逻辑的。

业务逻辑代表着现实世界中千变万化无比复杂的需求,业务逻辑就是现实,那么请问世上真的能有这么一个模型或框架可以覆盖绝大多数的业务逻辑吗?答案肯定是不存在的,世上没有银弹。即便是 CRUD 根据不同的业务需求,实现方式都会有巨大的变化,自然就不存在什么一劳永逸大而全的工具了。
目前各种 CMS 算是在通用 CRUD 这方面做的还算好的,但是 CMS 的用途也没你想得那么通用不是吗
Jooooooooo
2021-07-09 23:55:52 +08:00
有啊

脚手架已经够完善了
yellowV2ex
2021-07-10 00:08:17 +08:00
十几年前搞过一个生成 PHP 的东西,填几个表和数据库字段就自动生成 sql,管理后台和 api 接口以及前端的请求,想不到这么多年了,还没有傻瓜工具出来,是后端人员太便宜了还是需求不够多?
snw
2021-07-10 00:33:21 +08:00
企业的 ERP 等系统大部分就是 CRUD,但你看 SAP 、Oracle 做这么多年了做得那么复杂都没有到终点,说到底还是因为业务需求太多样,并没有通用解决方案。
IvanLi127
2021-07-10 00:42:58 +08:00
等所有产品都是程序员转行时 可能有希望
levelworm
2021-07-10 03:30:41 +08:00
基本上每家大公司内部应该都有点自己搭的脚手架。对于程序员来说,难道不是应该期待自己做脚手架吗?
tinywhale
2021-07-10 04:13:46 +08:00
世界上建了那么多房子,为什么建房子还那么麻烦。
zeni123
2021-07-10 04:15:06 +08:00
计算机连洗碗都做不了。。。
James369
2021-07-10 09:22:45 +08:00
这样不好,世界要多样化,大家都有机会
usw
2021-07-10 10:34:55 +08:00
打疫苗别人问你第一针什么时候打的,还得想一想呢
winglight2016
2021-07-10 11:05:30 +08:00
有很多 CRUD 框架,还能自动生成代码,我记得还有个框架是直接 Spring cloud 都用起来了,但是要是能够解决所有需求,那就只能期望强 AI 了
cmdOptionKana
2021-07-10 11:27:20 +08:00
关键不在于技术啊,而在于客户要五彩斑斓的黑。

客户提出的需求是千奇百怪的,永远能超出现有的套路。
DeWjjj
2021-07-10 11:49:55 +08:00
有啊,我平时自己就是这么干的。
txt 里面写上配置信息然后文件读取,转化成代码。
tq5124
2021-07-10 12:22:06 +08:00
二十年前你要做个简单系统,要自己手写数据库( txt 读取),web 服务器,用 c++来业务逻辑。现在就只需要 CRUD,难道不是已经是一种伟大的进步了嘛?

基本上现在各个组件(数据库,服务器框架,日志分析)都有各自的开源组件,CRUD 们要做的是根究需求把这些连起来
sobigfish
2021-07-10 12:40:14 +08:00
@wangxin13g 然鹅,你现在还能看到有的招聘通告里面有“要求”DW 的,太扯了。
opentrade
2021-07-10 13:03:28 +08:00
CRUD 下面可以是小家别院,也可以是星辰大海。
namelosw
2021-07-10 14:32:11 +08:00
简单地说其实是有很多纯 CRUD 系统的,比如给你的数据库客户端或者 CRUD 的 GraphQL,这类产品绝大部分问题是你想覆盖一部分逻辑进去就很恶心,特别是 UAC 等等。

假设考虑做一个内网不需要考虑安全的 admin 后台,前端直接发 SQL 到后端 eval,其实就是跳过 CRUD 了。问题就是考虑安全的时候,又不太好把后端的逻辑编译进 SQL 里,有存储过程,但是能力有限而且很恶心。这里面缺乏一种随意嵌入逻辑的「柔性」。

换句话说 CRUD 存在主要是因为我们用的语言和工具表现力不够抽象以解决 CRUD 问题,很多代码用能想出来但是用 Java 写不出来的。Fortran 没有二维数组,Cobol 没有函数,Go 没有泛型,很多东西缺了功能就会缺表现力。不只是编程语言,工具和系统也是,比如 MySQL 里不能随意嵌入 Java,Redis 只能嵌入 Lua 之类的。

表现力强的语言社区里,用户对表现力强的部分也不够信任,比如 Clojure 和 Elixir 社区对于宏的态度是「用宏的第一条规矩就是不用宏。能用函数就函数,不能用函数再用宏」。

不过也有一些被埋没的流派,其实感觉并没有真被规模化地探索过,拿宏作为例子,Paul Graham 说过他的代码 25% 都是宏(一般 Elixir 和 Clojure 程序能有 5%就很高了,很多人都完全不用),还有 Let Over Lambda 那本书里一些激进的双关等等。

有意思的是现在人们都在说 AI 写代码之类的,其实代码写代码最简形式早就有了,也就是宏,或者说 symbolic programming,一度被认为是编程界的下一个重心,结果随着上一波 AI 破产被遗忘了。
akira
2021-07-10 14:39:36 +08:00
@namelosw 我们 20 年前就已经在期待 ai 编程的到来了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/788561

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX