netnr
V2EX  ›  编程

吐槽一下这屎一样的代码

  •  
  •   netnr · Jul 20, 2020 · 8862 views
    This topic created in 2297 days ago, the information mentioned may be changed or developed.
    if(act.Trim() == "edit".Trim() || act.Trim()== "detail".Trim())
    {
      ...
    }
    

    同事写的,也算是工作几年了

    实话实说,忍不了

    Supplement 1  ·  Jul 21, 2020
    我想说的就是 1 楼的意思

    我首先跟当事人吐槽后再发出来的吃瓜,不是在背后,从来就是当面
    66 replies  •  2020-07-22 09:01:31 +08:00
    azcvcza
    azcvcza
    Jul 20, 2020
    1
    trim 不是去空格吗,那 "edit".trim()这种有啥意义
    pushback
    pushback
    Jul 20, 2020
    2
    还好,不算屎
    huiyue
    huiyue
    Jul 20, 2020❤️26
    3
    这个同事疑心病不小。
    del1214
    del1214
    Jul 20, 2020
    4
    还知道 trim 很厉害了
    chenyj
    chenyj
    Jul 20, 2020
    5
    ==后面画蛇添足
    lloovve
    lloovve
    Jul 20, 2020 via iPhone
    6
    Js ? Java 不能用等号比较字符串
    wangkun025
    wangkun025
    Jul 20, 2020
    7
    没有隐藏的 BUG 已经谢天谢地了。
    wangxiaoaer
    wangxiaoaer
    Jul 20, 2020 via iPhone
    8
    @lloovve 目测 c 艹
    wangxiaoaer
    wangxiaoaer
    Jul 20, 2020 via iPhone
    9
    @wangxiaoaer 打错了,c 井
    WeaPoon
    WeaPoon
    Jul 20, 2020
    10
    建议你问下他为什么要这样写,总有原因的,听听他的想法。
    ChenFanlin
    ChenFanlin
    Jul 20, 2020❤️6
    11
    `act.Trim()== "detail".Trim()` 等号前面没空格, 后面有空格 忍不了
    netnr
    netnr
    OP
    Jul 20, 2020
    12
    他回复我的:“你觉得不好 你就改成你认为好的”
    scsb
    scsb
    Jul 20, 2020 via iPhone
    13
    后面那个等号两边空格不一样多 swift 会骂人
    None123
    None123
    Jul 20, 2020
    14
    netnr
    netnr
    OP
    Jul 20, 2020
    15
    其实我想吐槽的是,现在很多小公司,对代码的质量没要求,也没人管
    yuyu2140
    yuyu2140
    Jul 20, 2020❤️1
    16
    我猜测原先不是 "detail" "edit" ,后面改需求图方便直接复制了改名字
    netnr
    netnr
    OP
    Jul 20, 2020
    17
    @yuyu2140 你猜得√
    yimity
    yimity
    Jul 20, 2020❤️1
    18
    那你觉得应该怎么写?
    ifxo
    ifxo
    Jul 20, 2020
    19
    已经不错了,lz 太偏执
    laoyur
    laoyur
    Jul 20, 2020
    20
    放宽心啦,能稳定工作就行
    ClericPy
    ClericPy
    Jul 20, 2020
    21
    楼主怕是没见过真屎吧... 我就曾经写过, 一个函数两百多行, 我自己都不知道自己在写什么了, 然后又加了一百多行日志进去
    wisunny
    wisunny
    Jul 20, 2020 via Android❤️1
    22
    @netnr 我觉得这个回复很好
    fxxwor99LVHTing
    fxxwor99LVHTing
    Jul 20, 2020
    23
    代码能工作就行
    996jiucai
    996jiucai
    Jul 20, 2020❤️3
    24
    // 这里可以吗?
    if(["edit","detail"].includes(act.Trim())) {

    }
    qdwang
    qdwang
    Jul 20, 2020 via iPhone
    25
    这个只是态度问题,说明他对你们做的项目不在意。除非你们老板会按照态度好坏来给奖金,不然无解
    Daming
    Daming
    Jul 21, 2020❤️1
    26
    这是一年的工作经验重复了几年
    对代码没有一点洁癖
    miv
    miv
    Jul 21, 2020 via iPhone
    27
    @huiyue 哈哈哈哈 笑死了
    LifStge
    LifStge
    Jul 21, 2020
    28
    @netnr 是啊 怎么都说的过去 说代码敷衍也行 说考虑的多 也不是说不过去.
    就上面说的 是替换的字符串 单从片面的看 多此一举的代码 但是如果从全局看 比如这俩字符串是是不是需要改动的 如果改动的时候 直接是批量替换的改 那这里这样写 切实也说的过去了 (虽然多次一举的嫌疑非常大) 不过也是能避免批量操作时候的 隐藏的的问题
    20015jjw
    20015jjw
    Jul 21, 2020 via Android
    29
    code review 呢
    看吐了
    hoyixi
    hoyixi
    Jul 21, 2020
    30
    过一度时间你会发现,可能你比 TA 还屎
    ipadpro4k
    ipadpro4k
    Jul 21, 2020 via iPhone
    31
    老罗:又不是不能用
    liaokylin2v
    liaokylin2v
    Jul 21, 2020 via Android
    32
    避免手抖
    opengps
    opengps
    Jul 21, 2020
    33
    这是习惯性将 string 进行 trim,是个偷懒的做法,我经常这样(但我不会在已知不包含前后空格的时候多此一举,我也不会将重复使用的多次重新进行 trim )
    sugars
    sugars
    Jul 21, 2020
    34
    能跑就行
    kemikemian
    kemikemian
    Jul 21, 2020
    35
    既然是后面改的,应该问问公司产品为什么改需求的频率比他妈改嫁还勤
    en20
    en20
    Jul 21, 2020 via iPhone
    36
    为什么方法名的首字母是大写?
    ciaoly
    ciaoly
    Jul 21, 2020 via Android
    37
    我以为楼主是在吐槽这种“字符串硬编码”的写法。。。。。
    这种地方难道不是应该定义一个常量类🐴?
    optional
    optional
    Jul 21, 2020
    38
    @en20 c#和 go 不都是大小写开头吗。
    meteor957
    meteor957
    Jul 21, 2020
    39
    为什么你在的公司没有 code review ?
    Duolingo
    Duolingo
    Jul 21, 2020 via Android
    40
    @en20 因为不是 Java ( doge
    serical
    serical
    Jul 21, 2020 via iPhone
    41
    楼主会怎么写呢
    lululau
    lululau
    Jul 21, 2020❤️3
    42
    每个人的能力不一样,薪资不一样,年终奖不一样,价值观也不一样;我的价值观是:随意在背后说吐槽别人代码和屎一样的人,人品和屎一样
    deepall
    deepall
    Jul 21, 2020
    43
    能看懂就万事大吉了
    xianxiaobo
    xianxiaobo
    Jul 21, 2020
    44
    也许你从来没有写过屎一样的代码。
    ZehaiZhang
    ZehaiZhang
    Jul 21, 2020
    45
    其他语言写 if(xxx.trim())会报错,我记得 java 是
    gaoryrt
    gaoryrt
    Jul 21, 2020
    46
    也有可能是把代码统一替换过的
    之前是 `if(act.Trim() == EDIT.Trim() || act.Trim()== DETAIL.Trim())`
    serge001
    serge001
    Jul 21, 2020
    47
    @996jiucai 我日常就是这么写,看到楼主贴的代码,我也会想打人
    lizz666
    lizz666
    Jul 21, 2020
    48
    @996jiucai
    用 includes 的话还要内部遍历一次是不是没必要呢?
    不过我并没有研究过这些 API 内部遍历效率与短路运算的效率对比
    Frank9621
    Frank9621
    Jul 21, 2020
    49
    act = act.Trim();
    if(act == "edit" || act == "detail")
    {
    ...
    }

    这样子?
    VictorJing94
    VictorJing94
    Jul 21, 2020
    50
    @wangxiaoaer C#的话建议用 Equals
    jasonding
    jasonding
    Jul 21, 2020
    51
    想起前几天看到个截图,几十行的 for 和 if 开头,层层嵌套
    aino
    aino
    Jul 21, 2020
    52
    还好吧,放宽心,不同公司,不同项目,标准都是参差不齐的,抱怨也没用,解决才是真理
    onecode
    onecode
    Jul 21, 2020
    53
    @lloovve 加上方法首字母大写,应该是 C#
    rming
    rming
    Jul 21, 2020
    54
    没毛病,代码很整齐,很健壮,即使手残多大一个空格也正常运行 [狗头]
    nuk
    nuk
    Jul 21, 2020
    55
    没毛病,但是约定一下 act 不包含空格更好吧。
    这种保护没有任何意义。
    wellhope
    wellhope
    Jul 21, 2020 via iPhone
    56
    😂至少还能让你读懂,不够💩的级别
    qiumaoyuan
    qiumaoyuan
    Jul 21, 2020
    57
    少年不识屎滋味
    lovecy
    lovecy
    Jul 21, 2020
    58
    这是一条完整光滑的,无虫的屎,能看出完整的屎结构,就是有点臭。
    就怕那种拉稀式的代码,一坨一坨看不出结构
    sidegem
    sidegem
    Jul 21, 2020
    59
    能看懂,不算💩
    zxcslove
    zxcslove
    Jul 21, 2020
    60
    @kemikemian 亲,这句话力度有点不足,建议改成“为什么改需求的频率快赶上他妈改嫁了”
    dreampet
    dreampet
    Jul 21, 2020
    61
    强迫症写的代码
    terrywater
    terrywater
    Jul 21, 2020
    62
    能看懂,并且无 bug,不影响性能的代码,不算大粪。
    kikyous
    kikyous
    Jul 21, 2020
    63
    这代码真的还好,你是没见过更垃圾的吧
    rigortek
    rigortek
    Jul 21, 2020 via iPhone
    64
    @netnr 明显讨厌你了,觉得你找事
    netnr
    netnr
    OP
    Jul 21, 2020
    65
    目前做的一个老项目升级改版,整个项目没理由可言,还有比这更恼火的,比如写绝对路径资源 等等
    如果是新项目,会要求同事整改
    Acoolda
    Acoolda
    Jul 22, 2020 via Android
    66
    不会用代码格式工具吗?也就随手一下的事情
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2876 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 118ms · UTC 13:18 · PVG 21:18 · LAX 05:18 · JFK 08:18
    ♥ Do have faith in what you're doing.