• 请不要在回答技术问题时复制粘贴 AI 生成的内容
pythonee
V2EX  ›  程序员

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

  •  
  •   pythonee · Nov 14, 2021 · 9458 views
    This topic created in 1817 days ago, the information mentioned may be changed or developed.
    记得刚学编程的时候,老师都说要低耦合高内聚
    后面接触了 OO ,好像也讲了很多模块化的设计方法,比如依赖反转
    工作后,又有了微服务等划分系统模块的方法

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

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

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

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

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

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

    现在编程已经是乐高式的拼装了,关键是要提前设计好怎么拼装
    laoyur
    laoyur
    Nov 14, 2021❤️17
    21

    乐高小车车
    hdiwhsg
    hdiwhsg
    Nov 14, 2021
    22
    @laoyur 被秀到了
    nicknick
    nicknick
    Nov 14, 2021 via Android
    23
    @jackmod 哈哈,正解。当你觉得你的框架多么爽,多么合理,多么智能的时候,人家明天来一句,能不能把那几个框变成灰色的呀(意思是不可编辑,流程权限)或者后天来一句不好用,还是换回来吧。
    xylxAdai
    xylxAdai
    Nov 14, 2021
    24
    定制化和标准化就是偏离的,你的产品越定制越个人化,越不可能标准化,你的产品越标准化,后面改起来就会越痛苦。
    特别是当一个产品用到了成千上万个标准化模块的时候,这时候对每个模块的需求又不停的变化,实际上我们现在的标准化已经不错了,问题是需求太过于个人。
    marffin
    marffin
    Nov 14, 2021
    25
    所以还是有不少人希望做个简单的 crud boy 的
    pengtdyd
    pengtdyd
    Nov 14, 2021
    26
    搭积木的这种方式是乌托邦,永远只能活在想象中。现实是想要追求最极致的用户体验,永远需要优化优化再优化,优化意味着是某种高度的定制,精心的雕琢每一个细节,没有任何多余的部分,你觉得搭积木能达到这种目标吗。
    wanguorui123
    wanguorui123
    Nov 14, 2021
    27
    前端组件化就是很好的搭积木,后端其实也可以搭积木,但是完全减少模块的耦合,需要研发团队的心志必须非常清晰,不然迟早写成屎山,你能做到代码的低耦合其他人的水平不一定行,最后把你的代码搅合成屎山。
    mengzhuo
    mengzhuo
    Nov 14, 2021
    28
    乐高就有图形编程的,搜索 MINDSTORMS
    但是你用过之后,就会想念各种编程语言……因为图形化很难表达复杂逻辑
    Jooooooooo
    Jooooooooo
    Nov 14, 2021
    29
    工程难度不在于写代码.
    yunyuyuan
    yunyuyuan
    Nov 14, 2021
    30
    @laoyur 这比写代码难:)
    cs419
    cs419
    Nov 14, 2021
    31
    这类东西挺多的啊
    游戏:dota 的地图 我的世界
    css: Tailwind
    淘宝、京东 对商家来说
    各种云服务 不都是么
    ZRS
    ZRS
    Nov 14, 2021
    32
    永远在路上
    timothyye
    timothyye
    Nov 14, 2021
    33
    不是已经有了吗,参考: https://scratch.mit.edu/
    哈哈
    jiayong2793
    jiayong2793
    Nov 15, 2021
    34
    中国企业不会给你时间封装的
    gengchun
    gengchun
    Nov 15, 2021
    35
    大概时间点就是以后你买汽车,车商给你一堆乐高让你拼。拼完直接上牌。

    差不多这个时候吧。
    putin541
    putin541
    Nov 15, 2021
    36
    永远都不可能的。分久必合 合久必分
    Rheinmetal
    Rheinmetal
    Nov 15, 2021
    37
    搭积木想象力不行 类似自动寻路的 copilot 了解一下
    1018ji
    1018ji
    Nov 15, 2021
    38
    你不失业吗
    yinzhili
    yinzhili
    Nov 15, 2021
    39
    个性化需求太多,不可能这样的
    betainCao
    betainCao
    Nov 15, 2021
    41
    我觉得现在的微服务不就是这种模式么?或者说比乐高的模式更加复杂。把每个服务想想为乐高的每个组件,组装起来才能提供一个完整的服务
    standin000
    standin000
    Nov 15, 2021
    42
    一直是乐高积木编程,就是积木太多了点,:D
    fxxkgw
    fxxkgw
    Nov 16, 2021
    43
    我司就有个项目叫乐高 实现你想的功能 支持这个项目的有 1000+容器 可想复杂度了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   3236 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 111ms · UTC 10:30 · PVG 18:30 · LAX 02:30 · JFK 05:30
    ♥ Do have faith in what you're doing.