我们离像乐高积木那样编程还有多远?

2021-11-14 09:00:45 +08:00
 pythonee
记得刚学编程的时候,老师都说要低耦合高内聚
后面接触了 OO ,好像也讲了很多模块化的设计方法,比如依赖反转
工作后,又有了微服务等划分系统模块的方法

但实际上,各个模块间的集成并非像拼积木那么简单,现在我们离像乐高积木那样编程更近了吗
在使用一些 vim 、emacs 插件的时候,偶尔会有一种积木组合的感觉,不知大家还见过哪些模块化编程、构造的软件呢
7096 次点击
所在节点    程序员
43 条回复
jackmod
2021-11-14 09:07:27 +08:00
企业的需求经常变,代码最终都会变成面条。煮面条就是比捏饭团省事。
事物喜欢归于破坏和混沌,积木式始终是努力的方向,而无所谓远近。
XTTX
2021-11-14 09:09:59 +08:00
https://github.com/ardanlabs/service

foundation- 底层 methods, 只要是 web app 都可以 copy-paste
business- 专属的业务逻辑、数据库、中间件
app- web app 入口,handler

最近好像又有大变化了。只要用顺了这个结构,新项目基本上就是缝缝补补,foundation 不用动,business 里的 CRUD 逻辑也是复制粘贴改,app 里的 handler 也差不多
XTTX
2021-11-14 09:17:16 +08:00
如果说积木的话,我看过几眼的 nest.js 里的各种 decorator 是真的像。一些常见的功能 “@xxxxx”就搞定了
coderluan
2021-11-14 09:28:56 +08:00
乐高其实远比你想的复杂,你弄个大点的套装,然后不看说明试试,编程其实也一样,达到一定规模,都得靠人脑和经验。
jasonkayzk
2021-11-14 09:52:49 +08:00
乐高搭了一万层,这时候产品过来告诉你,第 1 层和第 6666 层要大改;
watzds
2021-11-14 10:08:31 +08:00
等这个世界像像乐高积木一样单纯的时候,就能实现
rpman
2021-11-14 10:11:29 +08:00
感觉你没拼过难的乐高
chendy
2021-11-14 10:23:11 +08:00
简单的乐高比简单的程序简单
复杂的程序比复杂的乐高简单
其实道理都差不多,用最基本的单元拼出模块拼出大模块最后装一起
mmrindextt
2021-11-14 10:25:45 +08:00
世界哪有那麽多确定的东西,乐高你就确定能拼出个东西来的
ChefIsAwesome
2021-11-14 10:48:05 +08:00
思维混乱,概念不清。作为程序员,你不仅是拼乐高的人,也是设计乐高的人。
设计乐高比设计程序容易吗?不。
lrzsw2008
2021-11-14 10:54:13 +08:00
很多人在家不是不整理,但是要不了几天就会趋于一团
Kinnice
2021-11-14 10:55:34 +08:00
乐高的基础是 数百上千个各项参数确定基本模块
编程的基础是 数千万个(不止)个性能,参数各异的函数
makelove
2021-11-14 10:56:07 +08:00
需求细节就是这么复杂多变对应的编码能简单得了?除非强人工智能发明出来自动细化需求并实现
1194129822
2021-11-14 11:05:17 +08:00
乐高积木你以为简单?不需要学习?汇编对纸带打孔来说就是拼积木,高级语言对汇编也是拼积木,只是不需要学习所谓低一层的技术。你觉得现在开发软件简单吗?需求在发展,工具也有边际效益。
cmdOptionKana
2021-11-14 11:21:31 +08:00
乐高简单的前提是:

一个模型已经固定,批量生产,你买回来按图堆砌,基本上没有改动,用户一般也不会故意搞破坏。

编程难是因为需求不断变化。

如果像乐高那样设计固定不变,编程当然可以可视化拖拽完成,现在就可以做到,其实几十年前就能做到。
msg7086
2021-11-14 11:25:56 +08:00
现在不就是像乐高一样了吗,不需要你去写汇编代码,一个 if 语句就代替了一大堆 CPU 指令,这还不乐高吗……
wolfie
2021-11-14 11:35:05 +08:00
中台系统?
基础服务想不出与乐高对应。
kiracyan
2021-11-14 11:36:13 +08:00
现在的各种组件 中间件已经很像搭乐高了
ch2
2021-11-14 11:42:27 +08:00
编程本来就是乐高,只不过零件实在太多了,乐高也变得难搭了
xumng123
2021-11-14 12:20:43 +08:00
乐高挺难的,将几盒大规模的乐高混在一起,没有图纸的情况下,拼一个试一试?

现在编程已经是乐高式的拼装了,关键是要提前设计好怎么拼装

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

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

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

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

© 2021 V2EX