老码农冒死揭开行业黑幕:如何编写无法维护的代码(这是 Roedy Green 的一篇经典反讽文章) - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
up76733
V2EX    分享发现

老码农冒死揭开行业黑幕:如何编写无法维护的代码(这是 Roedy Green 的一篇经典反讽文章)

  •  3
     
  •   up76733 2014-11-27 10:02:29 +08:00 6361 次点击
    这是一个创建于 4023 天前的主题,其中的信息可能已经有所发展或是发生改变。
    22 条回复    2014-11-27 23:15:44 +08:00
    abelyao
        1
    abelyao  
       2014-11-27 10:06:45 +08:00
    伤敌1024 自损768
    cougar
        2
    cougar  
       2014-11-27 10:09:05 +08:00
    这个和那天说写可维护代码的回应吗,哈哈
    hcymk2
        3
    hcymk2  
       2014-11-27 10:15:31 +08:00
    我以前以为1000行的函数只是个传说。
    直到前几天接手了一个2010年的asp.net项目。
    我的.net水平就是个二把刀,没办法只好在那个1000行函数里面接着写吧。
    llb123
        4
    llb123  
       2014-11-27 10:19:48 +08:00 via Android
    这样命名。。过段时间自己还看得懂?。。。
    icedx
        5
    icedx  
       2014-11-27 10:25:55 +08:00 via Android
    本来以为是个无聊文章 点进去一看 太坏了233
    Mac
        6
    Mac  
       2014-11-27 10:30:06 +08:00
    这只能用于每天沉浸在同一个项目里365天不间歇的人。脱手一个星期立马自己吃药。
    bohan
        7
    bohan  
       2014-11-27 10:49:48 +08:00
    很好的讽刺文章
    typcn
        8
    typcn  
       2014-11-27 10:55:11 +08:00
    还有,拼音和英文混用,中间取字母,比如 DownloadFiles 取名叫 DWJS(Download Wenjian s) ,这样不至于自己也忘记自己的变量名
    meta
        9
    meta  
       2014-11-27 11:01:24 +08:00
    我曾经看到过一个写了一万多行的类,很长一段时间那竟然是公司所有项目的基础架构。
    meta
        10
    meta  
       2014-11-27 11:04:06 +08:00
    还有些大招此文里面没提到,比如序列化,把对象弄成二进制的放在那里,也是很牛X的。
    jamesxu
        11
    jamesxu  
       2014-11-27 11:37:57 +08:00
    把规则反过来就变成良好的编码风格了
    loryyang
        12
    loryyang  
       2014-11-27 11:53:38 +08:00
    居然写了这么多。。。足见是有多恶趣味
    sophymax
        13
    sophymax  
       2014-11-27 12:03:21 +08:00
    其实goto语句在多层循环或者迭代器操作里是非常简单高效的东西,只不过现在很多人看见就无脑喷 (一般人我不告诉他自己第一门能熟练使用的语言是汇编)
    fanta
        14
    fanta  
       2014-11-27 12:19:44 +08:00
    不写测试用例,不测试代码,有人会当真的...
    ruchee
        15
    ruchee  
       2014-11-27 12:50:28 +08:00
    丧心病狂,看得我笑了
    kmvan
        16
    kmvan  
       2014-11-27 12:56:45 +08:00
    如果上帝不愿意我们使用全局变量,他就不会发明出这个东西。不要让上帝失望,尽量多使用全局变量。

    这个。。。WordPress的作者绝对是信上帝的。。
    seki
        17
    seki  
       2014-11-27 13:13:42 +08:00
    我在想一个好的 IDE 能让多少个这样的技巧无效化 = =
    yyjjolin
        18
    yyjjolin  
       2014-11-27 14:26:36 +08:00
    绝逼是程序类相声稿。
    vavava
        19
    vavava  
       2014-11-27 15:10:48 +08:00
    秘籍到手,天下我有 (握拳
    ChiangDi
        20
    ChiangDi  
       2014-11-27 15:26:02 +08:00 via Android
    哈哈哈,发现这个网站里面这个好像不错 http://date.jobbole.com
    spacewander
        21
    spacewander  
       2014-11-27 15:37:49 +08:00
    @hcymk2 见过有1900多行的。而且那个类里还有1700多行的、1300多行的。这三个函数就占用了这个类的60%的大小了。
    up76733
        22
    up76733  
    OP
       2014-11-27 23:15:44 +08:00 via iPad
    @hcymk2 我们也有个从方案商拿来的代码一个类1w多行,6k以上的类也超级多。。 的outline都超级长,二次开发第一件事情就是拆分代码。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3083 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 12:50 PVG 20:50 LAX 04:50 JFK 07:50
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86