V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Patrick6
V2EX  ?  Vue.js

前端萌新想问一下,我看公司单个 vue 页面超过了一万行代码,这是什么概念?

  •  
  •   Patrick6 ·
    patrick12138 · 20 天前 · 14002 次点击
    第 1 条附言  ·  20 天前
    还有它注释掉的代码比写的还要多
    状态管理 vuex 都不用,等等
    第 2 条附言  ·  20 天前
    就在刚刚,新来的前端跟我说他要跑路了,我不会还要面对这个代码直到下一个前端来吧?
    157 条回复  ?  2024-04-16 17:29:44 +08:00
    1  2  
    ? ?
    hefish
        1
    hefish  
       20 天前
    别说 1 万行,2 万行又怎样? 又不是不能跑。。。
    VVVYGD
        2
    VVVYGD  
       20 天前   ?? 8
    @hefish 是的,程序跟人只要一个能跑就行
    Hopetree
        3
    Hopetree  
       20 天前   ?? 1
    又不是一个函数一万行,不要慌。。。
    retrocode
        4
    retrocode  
       20 天前
    屎山 跑啊
    uudaoshi
        5
    uudaoshi  
       20 天前
    有啥概念? 新手开发吗? 那你后面会有更多的见识
    feiwu1203
        6
    feiwu1203  
       20 天前
    后端的我想笑
    cheese
        7
    cheese  
       20 天前   ?? 18
    刚打开以为是我公司,想了想,最近没有新招人
    test4zhou
        8
    test4zhou  
       20 天前
    纯垃圾,我接手维护过这样的页面,全都是写轮眼。很多能单独抽取出来的工具函数都写在一个文件里
    LandCruiser
        9
    LandCruiser  
       20 天前
    哈哈哈,意味着启动项目要很久,而且会经常内存溢出。
    不过能混饭吃,哪怕 10 万行也无所谓,估工时你多估就行了,想跳槽就看面试题。
    Patrick6
        10
    Patrick6  
    OP
       20 天前 via Android
    @uudaoshi 不是,我是后端的,我只是稍微接手写一下而已
    chenliangngng
        11
    chenliangngng  
       20 天前
    见怪不怪?
    duanxianze
        12
    duanxianze  
       20 天前
    管他呢 能跑就行
    wu67
        13
    wu67  
       20 天前
    能跑就慢慢重构呗.

    我之前改过一个 4 千多行接近 5 千的, 也是头疼. 不过他没有格式化代码的, 一大坨一行飘过那种, 格式化一下估计有 7 到 8 千.

    另一个极端是那种疯狂拆分文件的, 明明一个文件写个 4 到 5 百行不过分, 偏要拆成 7 个, 从十几行到一百来行不等, 整个项目都是这种模式, 调试和改需求的时候痛苦的要死, 疯狂跳来跳去点点点...
    crocoBaby
        14
    crocoBaby  
       20 天前
    单文件大于 1000 行都是屎山,除非页面交互逻辑真的很复杂
    Perry
        15
    Perry  
       20 天前 via iPhone
    这是垃圾管理环境下程序员自保行为,要不是屎山做完他可以直接被裁换大学生维护了。
    leroy20317
        16
    leroy20317  
       20 天前
    把回车空格去掉就没一万行啦?
    ZGame
        17
    ZGame  
       20 天前
    意大利面条代码可读性其实还好, 主要是丑,和改的时候可能需要改的地方比较多
    BeiChuanAlex
        18
    BeiChuanAlex  
       20 天前   ?? 1
    按照过去的以及前辈们的经验,这种代码最好不要想着重构它!!!!!
    sloknyyz
        19
    sloknyyz  
       20 天前
    太正常了,程序员要学会在屎山上拉屎,这是基本功。
    shunia
        20
    shunia  
       20 天前
    什么概念?之前经手的开发人员都非常的稳重!
    Patrick6
        21
    Patrick6  
    OP
       20 天前 via Android
    @Perry 笑死,我就是类似那个大学生维护,我还是后端
    Patrick6
        22
    Patrick6  
    OP
       20 天前 via Android
    @wu67 我不会重构,毕竟我只是短暂接手,但原来这种事情这么常见那我就放心了?
    Aruok
        23
    Aruok  
       20 天前
    这时候就体现出你的重要性了, 直接重构了...
    felixlong
        24
    felixlong  
       20 天前
    @Patrick6 上一个是被裁了?自保没成功?
    Patrick6
        25
    Patrick6  
    OP
       20 天前 via Android
    @felixlong 被逼退了,每个星期给一大堆需求强制加班
    hellodigua
        26
    hellodigua  
       20 天前
    说明你要是搞懂,并且维护的只有你一个人能搞懂,你就是公司不可或缺的一员了[doge]
    bugmaker1024
        27
    bugmaker1024  
       20 天前
    又不是不能跑.jpg
    dfkjgklfdjg
        28
    dfkjgklfdjg  
       20 天前   ?? 2
    之前在张鑫旭那边看到的 ?

    kidult
        30
    kidult  
       20 天前
    几万行的 jsp 也不是不能跑,easy~
    Patrick6
        31
    Patrick6  
    OP
       20 天前 via Android
    @ZGame 不止呀,它注释掉的代码比能用的还要多,折磨
    dapaoge
        32
    dapaoge  
       20 天前
    能跑就行啊, 这不工作量不就来啦.
    wgbx
        33
    wgbx  
       20 天前
    这种代码需要先运行一下 npx eslint **/*.vue --fix 净化一下
    ma836323493
        34
    ma836323493  
       20 天前
    还好是前端。400 多行的 sql 呢
    sunwang
        35
    sunwang  
       20 天前
    最开始学习编程,觉得一个文件写 1w 行很 nb ,现在来看大概率是屎山
    Patrick6
        36
    Patrick6  
    OP
       20 天前
    @wgbx #33 谢邀,并没有 eslint 这种东西
    justfindu
        37
    justfindu  
       20 天前
    万一注释掉的以后还要用呢 别管他了 加入他
    Patrick6
        38
    Patrick6  
    OP
       20 天前
    @justfindu #37 是的,我保留了注释的代码,这样才能让后面的人知道这个页面有多厉害
    facebook47
        39
    facebook47  
       20 天前 via Android
    @wu67 估计是 Java 程序猿写的???
    unco020511
        40
    unco020511  
       20 天前
    业务只要能跑起来就行,1 万行又怎样?
    lawsiki
        41
    lawsiki  
       20 天前
    我们前端的有一个 vue 文件 2.2w 行
    blur1119
        42
    blur1119  
       20 天前
    屎山概念,我也只维护过 5000 行 react 代码,你这比我还夸张。逻辑最好你一点都别动
    cwliang
        43
    cwliang  
       20 天前
    传说中的防御型编程?
    rabt
        44
    rabt  
       20 天前   ?? 5
    注释多,有一种可能,说明需求改来改去的,反复无常留着备用
    xwwsxp
        45
    xwwsxp  
       20 天前
    这个没办法,Vue 2.x 就因为这样的原因,尤 才力推组合式 API 的。
    wjx0912
        46
    wjx0912  
       20 天前
    想学习下大师的防御型编程
    cirzear
        47
    cirzear  
       20 天前
    随随便便几千行
    MaxJin
        48
    MaxJin  
       20 天前
    小问题,项目催的紧,你封装组件又要花更长时间,一直催一直加,最开始是没时间拆分,到后面自己也不想动了。
    tomatocici2333
        49
    tomatocici2333  
       20 天前
    = = 业务赚不赚钱才是王道,不赚钱你写得再好也没用
    Patrick6
        50
    Patrick6  
    OP
       20 天前 via Android
    @lawsiki 还有高手?
    Patrick6
        51
    Patrick6  
    OP
       20 天前 via Android
    @MaxJin 说的有道理,我感觉是这样的
    ColdBird
        52
    ColdBird  
       20 天前
    我的评价是一坨狗屎,前面说封装组件要花更长时间。。。。。。。。。。。
    难道你都写在一起能省时间吗。。。。。。。。。。。。。。。。。
    maplelin
        53
    maplelin  
       20 天前
    又不是不能用.jpg
    cherishwinner334
        54
    cherishwinner334  
       20 天前
    @facebook47 过分了啊
    Patrick6
        55
    Patrick6  
    OP
       20 天前
    @ColdBird #52 这个也是,我加功能加的我头皮发麻,我很害怕下手,毕竟我只是临时前端
    wweerrgtc
        56
    wweerrgtc  
       20 天前
    等什么时候 GPT 可以一次输入输出 1 万行, 就可以拯救这些项目了
    wweerrgtc
        57
    wweerrgtc  
       20 天前
    我这也有 1 万多行的项目, 时不时再加点代码, 优化一下
    Jinnrry
        58
    Jinnrry  
       20 天前   ?? 3
    你这算啥,1 万多行的 SQL 见过吗
    LavaC
        59
    LavaC  
       20 天前
    不知道是不是业务不够复杂,我写出来的 vue 文件普遍在 500 行以内,极端情况也就 1000 左右,写这么多行,对滚轮都是种折磨。
    Patrick6
        60
    Patrick6  
    OP
       20 天前 via Android
    @LavaC 我想念我的无极滚轮了?
    tonytonychopper
        61
    tonytonychopper  
       20 天前
    业务在快速迭代,并且不重视代码质量的情况下,多少行都正常
    Patrick6
        62
    Patrick6  
    OP
       20 天前 via Android
    mljpre
        63
    mljpre  
       20 天前
    一万多行的 vuex 我见过
    LieEar
        64
    LieEar  
       20 天前   ?? 1
    我觉得这些都还好,最难以接受的是没有文档,需要自己从头看一遍代码...
    wusheng0
        65
    wusheng0  
       20 天前 via Android
    超过 500 行就会感觉不太合适,
    超过 1000 行就有点痛苦(来回滚动,或者开两个窗口)
    LavaC
        66
    LavaC  
       20 天前
    @Patrick6 #60 真,无极滚轮是我写代码后用过最好的鼠标功能,而且还是得 master 上那种自动变模式的,g 系列那种单独按钮切换的还不行。
    Patrick6
        67
    Patrick6  
    OP
       20 天前 via Android
    @LieEar 是的,你怎么知道我就是没文档没注释,硬写呢?
    hauibojek
        68
    hauibojek  
       20 天前
    感觉业务代码超过 1000 行就够恶心了 这一万的不敢想。
    zmqking
        69
    zmqking  
       20 天前
    @Jinnrry #58 这个维护起来简直是灾难
    kujio
        70
    kujio  
       20 天前
    @ma836323493 之前写过好多条超过一千行的 SQL 语句,是单条的 SQL 语句,
    clue
        71
    clue  
       20 天前
    这不把代码屠一遍?
    要是以后还要自己改, 就趁早边做需求边重构, 要不然最后这一坨还是自己吃
    Patrick6
        72
    Patrick6  
    OP
       20 天前 via Android
    @clue 这倒不用,我只需要给回新来的前端就行了,后面我可不敢再碰了
    chenjunyue520
        73
    chenjunyue520  
       20 天前
    @LieEar 有文档,但文档是旧的,
    lihexinkai
        74
    lihexinkai  
       20 天前
    这个 vscode 打开会很卡吧
    Patrick6
        75
    Patrick6  
    OP
       20 天前 via Android
    @lihexinkai 我用的 webstorm ,还好卡倒不卡,我只能说确实能跑
    aliyun2017
        76
    aliyun2017  
       20 天前
    都是项目逐渐缩减人力,维护者也可能经历了 N 多,最保险的方案就是在这里继续堆积,抽离封装再细致再合理也只是在项目初建团队,一个项目最初有 10 人,到中期 5 个人,到最后维护可能就 1 个人,所以有需求就赶快整完交货; vuex 不用它能正常交互能跑 说明这页面也用不上这玩意,不是用了就很厉害,有些是为了用而用,为了偷懒 简单的子父组件都能给它上了;
    ytmsdy
        77
    ytmsdy  
       20 天前   ?? 1
    大惊小怪,我 TMD 还见过一个 2000 多行的存储过程呢!
    单单把里面的逻辑理清楚,我都快花了一个礼拜,然后用了快两个礼拜的时间改那玩意儿,一个礼拜的时间测试。
    月底写工作总结的时候,就一句,这个月改了一个存储过程。
    Jinnrry
        78
    Jinnrry  
       20 天前
    @zmqking #69 维护就直接把以前的一万行代码当成子查询,继续加 join ,分分钟又多千八百行
    UN2758
        79
    UN2758  
       20 天前
    1w3 行的 py 代码见过没,我见过
    lategege
        80
    lategege  
       20 天前
    防御性编程- -!建议再加上一万行~
    beginor
        81
    beginor  
       20 天前
    @Jinnrry 我也在这样的公司带过, 很多业务写在 sql 中, 存储过程都有几千行上万行,甚至还在 sql 中调用 xml/json/com , 想想就酸爽。
    x86
        82
    x86  
       20 天前
    主动防御型编程
    xsonglive491
        83
    xsonglive491  
       20 天前
    每个组件都很相似但是又各种不同,倒是想封装
    roundgis
        84
    roundgis  
       20 天前 via Android
    @Hopetree 以前維護過一個系統 一個函數 9000 多行
    5sheep
        85
    5sheep  
       20 天前   ?? 1
    程序员三境界
    害怕屎山,初级工程师
    理解屎山,中级工程师
    成为屎山,高级工程师
    LightofHeven
        86
    LightofHeven  
       20 天前
    13 年 java 工程打包报错了 提示 一个类超过 65535 行
    simo
        87
    simo  
       20 天前
    挺好的,一个人不可或缺有时候是因为无意识的代码混淆。
    前段时间,一个老同事说,负责的大项目刚做完上线,公司要裁他了。公司动脉 p 事没有,他反正要吐血了
    shizhibuyu2023
        88
    shizhibuyu2023  
       20 天前
    丢给 gpt 重构啊
    IvanLi127
        89
    IvanLi127  
       20 天前
    或许是人员流动性大的体现?
    freezebreze
        90
    freezebreze  
       20 天前
    以后简历 项目亮点可以写上 拆分了单个 1 万行的组件,优化 XXX ,复用 XXXX 提升 XXX /写上 但是你不要真做 哈哈
    devzhaoyou
        91
    devzhaoyou  
       20 天前
    @leroy20317 好家伙,空格去掉还能跑么
    tianzi123
        92
    tianzi123  
       20 天前
    @shizhibuyu2023 你可以试试,按我的测试,gpt 最多一次弄 300 行
    yzlren
        93
    yzlren  
       20 天前
    @xwwsxp 有没有想过一个问题,组合式 api 也是可以不用的,不会写代码的人推组合式 api 也是白推
    TomCN
        94
    TomCN  
       20 天前
    我自己写代码几乎不会有文件代码上千行,包括注释。

    之前我接手过一些代码,单个文件 4000 多行,其中一半多是从来没调用过的方法,完全可以删除的。

    其实这种情况非常正常,大部分人接手别人的代码,都不会去大改甚至不怎么改,然后要实现新的功能就必定只增不减了。
    winglight2016
        95
    winglight2016  
       20 天前
    @Jinnrry #58 MySQL 不支持这么长的 sql 吧?
    liyer
        96
    liyer  
       20 天前
    1 万行代码和 1 万个.vue ,选哪个?
    Patrick6
        97
    Patrick6  
    OP
       20 天前 via Android
    @liyer 我选择跑路之前多加几千行注释了的代码
    zeroDev
        98
    zeroDev  
       20 天前
    @Patrick6 #10 那说明你们专业的前端已经跑了
    jones2000
        99
    jones2000  
       20 天前
    @crocoBaby 我一个 js 文件都能有几万行。
    xwwsxp
        100
    xwwsxp  
       20 天前
    @jones2000 前端不是 tree shaking 吗?所以,拆分小文件不是基操吗?
    1  2  
    ? ?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2392 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 13:26 · PVG 21:26 · LAX 06:26 · JFK 09:26
    Developed with CodeLauncher
    ? Do have faith in what you're doing.


    http://www.vxiaotou.com