知道的越多,写代码越慢。。。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hiwower
V2EX    PHP

知道的越多,写代码越慢。。。

  •  
  •   hiwower 2017-04-16 18:33:21 +08:00 10070 次点击
    这是一个创建于 3104 天前的主题,其中的信息可能已经有所发展或是发生改变。

    记得刚入行的时候,信手就写。 几千行代码。

    现在举步维艰,感觉各种情况考虑。几十行代码。

    做技术越做感觉 脑筋不够用。

    65 条回复    2017-04-20 14:34:15 +08:00
    akira
        1
    akira  
       2017-04-16 18:37:14 +08:00
    代码强健度不一样
    linhua
        2
    linhua  
       2017-04-16 18:40:32 +08:00   4
    有经验后,写代码, 考虑的东西越来越多, 可能刚开始就考虑到性能问题。

    其实有些东西可以以后 改进,进行重构,不需要 一次性过。

    所以要 松弛有度, 有的地方严格,速度慢些 有的地方,就快些 更快,更高,更强吧
    coderluan
        3
    coderluan  
       2017-04-16 18:44:52 +08:00   7
    额,这样说明其实你知道的也许还不够多。
    lyhtsm
        4
    lyhtsm  
       2017-04-16 18:50:59 +08:00 via Android
    过阵子习惯套路了就又快起来了,我们公司有些老头子工程师就是这样…
    Khlieb
        5
    Khlieb  
       2017-04-16 19:52:15 +08:00 via Android
    找到窍门以后,感觉就会柳暗花明
    Immortal
        6
    Immortal  
       2017-04-16 19:56:34 +08:00
    这也是进步的表现 但也不要走入误区 把自己绕进去
    NonClockworkChen
        7
    NonClockworkChen  
       2017-04-16 19:59:26 +08:00
    先写,再优化吧,没必要一步到位
    zgqq
        8
    zgqq  
       2017-04-16 20:00:28 +08:00
    我现在些代码也是很纠结
    21grams
        9
    21grams  
       2017-04-16 20:05:34 +08:00
    这是正常的,一天也就写个几十行代码。
    hiwower
        10
    hiwower  
    OP
       2017-04-16 20:12:36 +08:00
    @21grams 额。真的吗?我感觉这个速度,以后被领导嫌弃死,
    hiwower
        11
    hiwower  
    OP
       2017-04-16 20:12:58 +08:00
    @akira 不见得有多好,总之感觉很糟糕,下笔沉重。。。
    hiwower
        12
    hiwower  
    OP
       2017-04-16 20:13:37 +08:00
    @lyhtsm 。。。我不想老了。你们公司还有老头子工程师吗? 多大啊
    gam2046
        13
    gam2046  
       2017-04-16 20:18:22 +08:00
    作为入职没多久的新员工,目前的状态是知道的并不多,但是属于编程五分钟,扯淡两小时的情况。聊天聊着聊着 突然想到怎么写了,就敲键盘。敲不动了,继续聊天。直到下班。
    kaneg
        14
    kaneg  
       2017-04-16 20:19:59 +08:00 via iPhone
    初生牛犊不怕虎。时间长了,经过磕磕碰碰,该踩的雷都踩一遍,就会深思熟虑,避免走弯路
    phrack
        15
    phrack  
       2017-04-16 20:29:41 +08:00
    我觉得可能是想多了。

    我有时也会遇到这个情况,要是进来的参数不正确我是不是要处理下,要是内存不够了我要不要释放一下,然而一旦遇到这种情况我就提醒自己,管 tmd ,先把业务逻辑撸完了再说, bug 本来就是用来修的。
    bukip
        16
    bukip  
       2017-04-16 20:30:54 +08:00   1
    每天写几十行,其他的都是抄的。
    llb123
        17
    llb123  
       2017-04-16 21:13:21 +08:00
    鲁棒性高
    sagaxu
        18
    sagaxu  
       2017-04-16 21:26:33 +08:00 via Android
    平均每天几十行 ,包括抄的在内,哈哈
    em70
        19
    em70  
       2017-04-16 21:33:15 +08:00 via Android
    只有 100 用户的时候不要考虑一亿用户的问题
    bigpigeon
        20
    bigpigeon  
       2017-04-16 21:39:57 +08:00
    自从用 python 以来每天的代码量是越来越少,多则几十行,少则几行
    KirkZheng
        21
    KirkZheng  
       2017-04-16 22:39:36 +08:00 via Android
    @lyhtsm 老头子工程师
    acros
        22
    acros  
       2017-04-16 22:45:30 +08:00
    有一段时间好像是这样,感觉怎么写都不妥,好像写的 bug 数量比字节数还多
    大概就是从不知道自己不知道,到了知道自己不知道的程度。
    ddou
        23
    ddou  
       2017-04-16 22:52:28 +08:00
    经历丰富后, 首先是不会再急着动手写代码了,会考虑比较多的选项,不同的场景. 这些想清楚后,就是下笔如有神了, 刷刷的, 拦都拦不住, 哈哈
    lococo
        24
    lococo  
       2017-04-16 22:55:49 +08:00
    几行代码解决几千行的问题,多好,难道这还要自嘲?
    Khlieb
        25
    Khlieb  
       2017-04-16 23:54:50 +08:00 via Android
    楼主需要一把金钥匙
    lyhtsm
        26
    lyhtsm  
       2017-04-17 00:32:23 +08:00 via Android
    @hiwower 有啊,不过大多在德国。 40 50 多的,开会时候就看对面好几个白胡子老爷爷
    Mitt
        27
    Mitt  
       2017-04-17 04:06:54 +08:00   1
    应该都是这样吧,刚开始会什么写什么,想起什么写什么,但是遇到很多问题以后就记下了,下次再写东西就会花更多时间在如何事先避免这些问题上,比如什么性能、扩展性、结构等等,码代码的效率会有所低下,但是代码质量会往上提升,以前你可能时间都花在修 bug 上,现在花在优化代码上。加上确实懂的多想的多了就会懒了。编程五分钟,扯淡两小时,比如你看我现在就在这扯了一大段。
    linjianru
        28
    linjianru  
       2017-04-17 05:43:12 +08:00
    确实如此。不过逐渐也会豁然开朗进入下一阶段。
    ys0290
        29
    ys0290  
       2017-04-17 07:29:49 +08:00 via iPhone
    这只是一个把书读厚的阶段
    douglas1997
        30
    douglas1997  
       2017-04-17 07:33:07 +08:00 via iPhone
    Make it work and then make it fast.
    smdx
        31
    smdx  
       2017-04-17 07:39:29 +08:00 via iPhone
    极限编程号称敏捷开发,适用于企业级高复杂度,本来 3 个月得像项目一个星期出一个版本,之后在这个版本上不断迭代,形成最终版本 ,据说这种行项目更加成功
    smdx
        32
    smdx  
       2017-04-17 07:40:47 +08:00 via iPhone
    这种类型项目更加成功
    twoyuan
        33
    twoyuan  
       2017-04-17 07:42:27 +08:00
    也有可能是知道的不多而想的太多
    smdx
        34
    smdx  
       2017-04-17 08:10:43 +08:00 via Android
    @twoyuan 应该是不知道编程得真理,发散性思维想各种情况,其实你发散想得东西,早就在语言各种异常定义中安排好了得东西,你没发现程序任何异常,程序语言本身自己是知道得,因为已经定义好了,凡是不符合类库接口契约得都记录为异常
    smdx
        35
    smdx  
       2017-04-17 08:13:04 +08:00 via Android
    不是说不要发散性思维,发散性主要集中在业务逻辑缺陷方面,这是语言异常不能发现得
    kaishi123
        36
    kaishi123  
       2017-04-17 08:23:39 +08:00
    华罗庚说读书要先由厚到薄,再由薄到厚。跟楼主的感慨差不多一个意思吧。
    initialdp
        37
    initialdp  
       2017-04-17 08:47:12 +08:00
    大家都别装了, lz 只是老了。
    jatesun
        38
    jatesun  
       2017-04-17 08:50:11 +08:00
    一行顶百行,码农这个行业,以一当百很正常的事情
    Romanticlizhi
        39
    Romanticlizhi  
       2017-04-17 08:52:27 +08:00
    我觉得除开我抄的,一天也是几十行,哈哈哈哈。。。
    Phariel
        40
    Phariel  
       2017-04-17 09:10:09 +08:00 via Android
    正常的 慢慢就信手拈来了
    auhah
        41
    auhah  
       2017-04-17 09:18:03 +08:00
    @lyhtsm #26
    40 50 多的白胡子老爷爷?
    JamesRuan
        42
    JamesRuan  
       2017-04-17 09:21:56 +08:00
    不应该看单每天增加的代码,而应该看每天删除的代码。

    正常情况下每天增加的比删除的也就多那么几十行,很少超过 100 行。但是删除的也算上的话,正常情况 100-200 行是比较常见的。
    blacklee
        43
    blacklee  
       2017-04-17 09:34:06 +08:00
    Done is better than perfect.

    按照楼主说的,以前很快,现在很慢,这种情况,基本不是因为想太多,而是因为想太少了。

    我个人的独自项目,自己给自己提 issue ,自己在 issue 里更新当前的想法和问题解决思路。你可以看右侧的 issue 内更新数。另外的 activity 界面我就不贴了,经常先连着 3-4 个 comment ,然后再接着一堆的 commit 。

    ![]( )
    lyhtsm
        44
    lyhtsm  
       2017-04-17 09:41:13 +08:00 via Android
    @auhah 你说的对噢,难道年纪更大……
    wizardoz
        45
    wizardoz  
       2017-04-17 09:44:11 +08:00
    代码太精炼未必是好事。
    eyp82
        46
    eyp82  
       2017-04-17 09:55:49 +08:00
    我觉得初期不需要考虑太多 corner cases, 只需要集中精力把主线流程实现出来. 然后通过高覆盖率的单元测试, 集成测试等去发现 corner cases 并增加处理.
    一开始就纠结于各种异常情况, 反而偏离了重心, 导致很难建立起流畅的思路解决问题.
    quickma
        47
    quickma  
       2017-04-17 09:57:42 +08:00
    没有银弹
    rozbo
        48
    rozbo  
       2017-04-17 09:58:49 +08:00
    随着技术的增长,写几千行代码的这种工作自然要交给下面的人去做,自己只负责写出核心的几十行就可以了。
    难道这不是资源的合理分配吗?
    garrych
        49
    garrych  
       2017-04-17 10:05:33 +08:00
    非也!这只能说明你知道的还不够多。
    知道多了写代码慢很正常,但是知道的足够多的时候,写代码就快了
    carlonelong
        50
    carlonelong  
       2017-04-17 10:21:17 +08:00
    不要过度设计啦
    subpo
        51
    subpo  
    PRO
       2017-04-17 10:35:13 +08:00
    三重境界
    看山是山,看山不是山,看山还是山
    bianhua
        52
    bianhua  
       2017-04-17 10:40:34 +08:00   1
    @subpo

    其实还有两重境界:
    不想再看山,替我去看山
    bk201
        53
    bk201  
       2017-04-17 10:41:37 +08:00
    我这么觉得我新手时候才会考虑东考虑西,然后 1 天下来基本没写什么。后来基本上是先功能出来再优化。
    bluefalconjun
        54
    bluefalconjun  
       2017-04-17 12:17:34 +08:00
    只做架构设计... 只画流程图 结构图... review 代码, 一天 comment 大概 10 个以内的 cl...
    已经到了基本不写代码, 只有移植, 修改部分调用.
    kfreewind
        55
    kfreewind  
       2017-04-17 12:27:38 +08:00   1
    先梳理流程,封装业务模块,善于使用工具模块,分离关注点,就会发现需要关注的东西越来越少。
    moka20477
        56
    moka20477  
       2017-04-17 12:29:00 +08:00
    过度设计
    lovejoy
        57
    lovejoy  
       2017-04-17 13:37:29 +08:00
    我现在写代码都会考虑高并发会怎样,但是感觉想多了。
    10years
        58
    10years  
       2017-04-17 15:00:15 +08:00
    等到下个阶段就好了.
    monburan
        59
    monburan  
       2017-04-17 15:16:36 +08:00
    原来写代码也不考虑性能,也不考虑效率,单线程上来就是干。
    现在知道多线程了又去考虑消息队列,还要考虑代码写的规不规范,写注释了吗,别人能看懂吗。。。
    zacard
        60
    zacard  
       2017-04-17 15:22:29 +08:00
    出的 bug 约少
    guodong
        61
    guodong  
       2017-04-17 15:46:54 +08:00
    @initialdp 哈哈,楼主只是撸多了
    sammo
        62
    sammo  
       2017-04-17 17:09:08 +08:00
    如果把工作分为“想”的部分和“写”的部分,一般先规划好了写起来很快的,边写边想 and 没写就已经想好了怎么写 还是不一样的
    smdx
        63
    smdx  
       2017-04-17 17:16:52 +08:00 via iPhone
    @sammo 贪吃蛇想好了, 20 分钟就写出来了
    antowa
        64
    antowa  
       2017-04-18 10:56:18 +08:00
    考虑东西多了就会这样
    visonme
        65
    visonme  
       2017-04-20 14:34:15 +08:00
    随着知识的积累,这种情况也是很正常,所以越到后面开发的时间会越来越少,而思考的时间会越来越多。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5847 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 38ms UTC 02:25 PVG 10:25 LAX 19:25 JFK 22:25
    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