zhengfan2016

ai 时代,现在控制项目代码可读性还有意义吗

  •  
  •   zhengfan2016 · Apr 1 · 5442 views
    This topic created in 220 days ago, the information mentioned may be changed or developed.
    如题,看了 claudecode 的 main.ts 单单一个 run 函数就 4400+行代码,人类不依赖 ai 读的话也得读很久吧。但是依赖 ai 你也没法判断 ai 总结的对不对,因为你实际都没完整读过 main 的代码。
    40 replies  •  2026-05-26 21:00:30 +08:00
    clemente
    1
    保持 ai 的可读性
    算是上下文持久化
    xtreme1
    xtreme1
    Apr 1
    2
    省 token
    clownxiaoqiang
    暂时来说还是有意义的,硬要说的话,未来可能意义越来越小。

    毕竟 AI + Code Agent 都在发展,不是就停在当前的水平了。当 AI 的结果越来越可信,就越不需要懂细节。
    swaylq
    swaylq
    Apr 1
    4
    反而更有意义了。AI 生成代码越多,你越需要能快速 review 的代码结构,不然就是在给自己埋雷。CC 那个 main.ts 是个反面教材,4400 行的函数连人带 AI 都不好维护。实际项目里我现在反而更严格地拆函数、写注释了,因为 AI 重构的时候如果原始代码就是一坨,输出只会更烂。可读性本质上是给未来的自己(和 AI )省时间。
    beimenjun
    5
    当然有。

    代码就算是给 ai 看的,维持一种可读性,也是提升 ai 工作质量的一种途径。 /t/1196036
    lifei6671
    6
    当一个 bug 出现 AI 又无法修复的,就很有意义了。
    jackOff
    jackOff
    Apr 1
    7
    现在就是要强调代码可读性,减少过度设计模式啊,否则烧 token,哪怕换新人接手也不好接手啊
    Atma
    Atma
    Apr 1
    8
    没了,自己都不读了
    andforce
    andforce
    Apr 1 via iPhone❤️1
    9
    我称之为:古法编程思维

    没有必要,请面向结果编程
    heyjianjun
    10
    AI 治好了我的代码洁癖,现在完全不看代码了,能跑起来就行
    zhengfan2016
    11
    @heyjianjun 实话说我写自己的开源项目还是有不少代码洁癖的,vibe 确实能用,但是还是没法接受完全 vibe
    mtan
    mtan
    Apr 1❤️1
    12
    要有中间商思维。想想之前你手写代码的时候,你老板会追你的代码求可读性吗?
    stormynight
    13
    现在 obsidian 里的笔记都不怎么整理了...想着有空了让 ai 花一晚上整理一下
    laikicka
    14
    @swaylq 4400 行的函数 很少了啊.. 这也不能维护?
    ganbuliao
    15
    呃呃呃呃
    这个也是最后压缩成一个文件提供出去
    可不是工程上本来就写这样的啊
    wu67
    wu67
    Apr 1
    16
    还算有意义, 组织合理的代码, AI 分析代码的时候, 稍微快一点点, 但是怎么说呢, 有点鸡肋了, 能用就行, 多出来的时间喝两口开水就好了.

    当然 ai 乱喷屎的时候最好别接受, 一旦这种状态, 大概率开始降智了, 不要接受代码, 让它忘掉前面的逻辑重写
    udisyue
    udisyue
    Apr 1 via Android
    17
    看你怎么看待这个工程了,要是纯粹一锤子买卖的,无所谓维护,那就不管。要是你还想用这套代码搞业务,那还是要控制一下
    Ketteiron
    18
    一个函数几千行我认为不会影响可读性
    影响可读性的是代码质量和组织方式
    如果写得足够好,阅读起来会比散落成几十个小文件轻松得多且快得多

    例如我自己编写业务 SDK ,基本就是一个上千行的 index.ts ,只有一个闭包主函数,对于 LLM 来说根据业务上下文去加功能改代码又快又好,不需要消耗大量 token 在递归代码上,徒增噪音,其实对于人类来说也是如此
    BeautifulSoap
    19
    在现在这个 AI 编程范式还没发展出结果的情况下,这取决于你相信哪一套 AI 叙事

    相信一切全交给 AI ,只要 AI 模型够强相信靠着测试和验收能完全不用掌控代码这套叙事的话,那就让代码飞,你只做一个负责验收的老板。
    相信 AI 时代代码依旧需要人类 review 的话,那控制 AI 写出人类可读可 review 的代码就至关重要了
    GeruzoniAnsasu
    20
    在说什么蠢话

    - 你是 AI 的 leader
    - AI 正试图防御性编程写出你看不懂的代码

    你的选择是?
    1. 「噢噢,能跑就行,A 工,以后靠你了」
    2. 「这种垃圾也想过我的 review ?我看你是不想干了」
    eroneko
    eroneko
    Apr 1
    21
    现状可能还有点必要,将来组织成 AI 自己能够快速读懂的形式就行,最好上下文全在代码里,更省事
    yl20181003
    22
    自己项目还是要的,公司项目,直接让 AI 随便拉,毕竟跟催命一样在后面催。
    GeruzoniAnsasu
    23
    新鲜出炉的例子:





    意思是想说,它写成这样,你也不需要看懂代码?
    andforce
    andforce
    Apr 1 via iPhone
    24
    @GeruzoniAnsasu 你这是啥编程工具?啥 AI 模型?
    怎么看着模型有点像拉胯的 gpt4 ?
    jsq2627
    jsq2627
    PRO
    Apr 1
    25
    不好说,只能说暂时还有意义。谁也不知道未来 AI 会发展成怎样

    就像 CLAUDE.md 曾经要写一大堆东西,现在大多数项目用不用 claude.md 区别不大
    zhengfan2016
    26
    @andforce #24 这个应该是装在 vscode 上的 codex 吧,我也在用
    zhengfan2016
    27
    @BeautifulSoap 是的,现在纠结的点就是,我可能更相信 ai 需要 review ,但是不管是网上还是现实中都有很多全交给 ai 的叙事轰炸,包括公司上级也说要让 90%的代码由 ai 生成,我也不知道到底更应该相信哪个了
    calmack0x452
    28
    相信我,绝对有用。我特意让 AI 照着 CA 架构编写,就是为了让我快速阅读代码,你可以不用一行一行看,但整个流程、状态机流转你最好都要掌握。

    我上周写一个比较复杂的流程,就出现了没有在需求内的工作,我呼叫其他部门的 API ,业务太复杂经常出问题,比如某些业务别的资料可能少填就会报错,他竟然为了要让流程往下跑,给我弄了一个兜底的方案,我要是没发现,等哪天上线炸了,我的数据库肯定会出现不该出现的数据,到时后面 AI 排查我看也难,很有可能会认为兜底方式没问题。
    gefangshuai
    gefangshuai
    Apr 2 via iPhone
    29
    @swaylq 错,根本不需要 review 代码了
    gefangshuai
    gefangshuai
    Apr 2 via iPhone
    30
    @GeruzoniAnsasu 你用拉跨的模型就好比雇了一个能力不行的员工,那你为什么不雇个牛逼的员工呢?雇个牛逼的员工作为老板你还 review 他的代码吗
    GeruzoniAnsasu
    31
    @gefangshuai 你说得对,但你再想想,你口中的「牛逼的员工」现实中有这个人不?有几个?
    gefangshuai
    32
    @GeruzoniAnsasu #31 但是牛逼的 opus4.6 ,完全不用 review 了
    GeruzoniAnsasu
    33
    @gefangshuai 你猜我为什么用 codex
    GeruzoniAnsasu
    34
    @gefangshuai

    不知道你跟这些模型打交道的频率有多少,我这又有一个新鲜例子了。opus4.6 无法理解「确保旧代码不再被调用链路引用,并把它们注释为 deprecated 」这句话。 我反复了 6 次,它要么会在已经不用的结构里加上 depreacted = true 这个字段,要么会把整个旧结构删掉。



    所以你猜我为什么用 codex —— openai 的模型服从性好但思考深度低,a\就是会有固化的擅自主张的行为逻辑,如果你刚好落在了边界,那甭想它能自己改好了。
    gefangshuai
    35
    @GeruzoniAnsasu #34 频率: https://cdn.jsdelivr.net/gh/lifedever/images@master/uPic/2026/04/[email protected]

    选择解决问题的办法有很多,而你选择了一棒子打死了所有
    GeruzoniAnsasu
    36
    @gefangshuai 我选择的是一棒子把所有模型都列为不可信任并强制规定人工介入。
    zqguo
    zqguo
    Apr 7
    37
    你也把 AI 当个人吧
    Rorysky
    Rorysky
    May 17
    38
    @calmack0x452 什么叫 CA 架构?
    BlueBing
    BlueBing
    May 19
    39
    @GeruzoniAnsasu 请教下,如果同时使用 codex 和 claude ,如何分配他们的职责比较合理?
    calmack0x452
    40
    @Rorysky Clean Architecture 整洁架构,如果要 Agentic Coding 可以考虑 Clean Architecture with Vertical Slice 这种变体。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1655 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 120ms · UTC 11:08 · PVG 19:08 · LAX 03:08 · JFK 06:08
    ♥ Do have faith in what you're doing.