编码的时候想的越来越多了,这是程序人生中的一个阶段吗 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
AlexaZhou
V2EX    问与答

编码的时候想的越来越多了,这是程序人生中的一个阶段吗

  •  
  •   AlexaZhou 2015-06-07 23:13:44 +08:00 2553 次点击
    这是一个创建于 3781 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近一年发现自己编码的时候想的越来越多了。

    以前我都是一边写着一边想,再一边改一边调。

    先在更倾向先在脑袋里面构建出整个程序的骨架,然后再编码。有时候构思的这个过程可以占到一半以上的时间。后面的编码一般就是先把方法接口什么的写好,然后往里面填东西,其实蛮容易的。

    自我感觉考虑充分之后,bug变少很多,而且架构更能适应后期的修改。问题就是写代码会变慢很多,特别是一开始的的时候,要好多时间想好多东西才能开的了头 TAT。。。哪怕写个很简单的东西也是这样。再也木有之前 "糙快猛" 干完一件事情的快感了

    我很好奇,这是程序员水平提高过程中的一个阶段吗?
    大家有木有经历过这种情况的,再后面的阶段是什么呢。

    12 条回复    2015-06-07 23:51:32 +08:00
    mthli
        1
    mthli  
       2015-06-07 23:22:14 +08:00   1
    一般有这种感觉说明你做的项目尚能在你的把控范围内。我也是这样的。但是超出这个范围就很捉鸡了。
    banri
        2
    banri  
       2015-06-07 23:25:38 +08:00   1
    本菜鸡觉得这是个很好的状态啊……

    反观我这个菜鸡都是写一半卡住然后逛一圈超市或者蹲坑的时候想着怎么继续……
    sinxccc
        3
    sinxccc  
       2015-06-07 23:29:37 +08:00   1
    你不是一个人…

    我一般就是看看想想,得把所有的细节都想清楚了才肯动手。说不上来这是好还是不好,但可能花的时间要比直接上手 break stuff 要多吧,大概。
    AlexaZhou
        4
    AlexaZhou  
    OP
       2015-06-07 23:31:15 +08:00
    @mthli
    有一部分是的。对很不熟悉领域的情况,一般是摸索着来了。。。
    没办法事先想很深入,不过思维方法比开始也有些不同就是啦
    一样会变慢
    zsx
        5
    zsx  
       2015-06-07 23:35:00 +08:00   1
    同属于此阶段……
    于是最近想写点小工程都因为前期构思框架太大导致懒得写,又回到了直接硬上手的状态_(:з」∠)_
    这样写的确代码可维护性会比原来的好很多了……但是时间啊时间啊时间啊时间……

    最近在规划一个API项目,打算以测试驱动。采用何种API风格、请求和返回怎么定义这些基础的问题暂且不说。愣是考虑了一天以下问题: 测试怎么写?环境怎么搭?文件怎么分割?模块怎么解耦合?路由怎么写?要包含哪些公用函数?是直接使用系统集成代码,还是将系统内部实现优雅地重构一遍?

    于是到现在还没开始写代码。
    AlexaZhou
        6
    AlexaZhou  
    OP
       2015-06-07 23:35:16 +08:00
    @sinxccc
    应该是更好。
    前期会多花些时间,但是考虑到后期成本降低,就完全可以拉回来了
    AlexaZhou
        7
    AlexaZhou  
    OP
       2015-06-07 23:36:41 +08:00   1
    @banri
    加油,不过你现在还可以体会“糙快猛”的快感
    saximoer
        8
    saximoer  
       2015-06-07 23:37:00 +08:00   1
    在经过几次说写就写的任性坑以后
    慢慢开始先计划好以后再动键盘了
    zsx
        9
    zsx  
       2015-06-07 23:37:08 +08:00
    @zsx 另外这个项目其实硬上手的话代码量不算界面也就那么10K……
    AlexaZhou
        10
    AlexaZhou  
    OP
       2015-06-07 23:42:39 +08:00
    @zsx 对啊,太多事情都要考虑了

    感觉之前拿到需求立刻就能开始写,还写的很快。。。有些“无知者无畏”的味道

    现在还没开始写就知道哪儿将来可能出现什么坑。所以要采用什么样的设计来应对

    另外还要让代码优雅,要想好久才能开个头
    AlexaZhou
        11
    AlexaZhou  
    OP
       2015-06-07 23:47:06 +08:00
    @zsx 额,10K不是很多,但也不少,硬上怕是撸出了后期不好搞。。。
    zsx
        12
    zsx  
       2015-06-07 23:51:32 +08:00
    @AlexaZhou 所以好多东西干脆就不写了因为预见到这东西要写起来太麻烦了_(:з」∠)_写粗暴的代码自己又看了恶心连贴到GitHub的勇气都没有……(其实就是懒)

    说实在的那10K可以全部直接switch + if走起,就是太不优雅,太难看,没准还会出现一堆冗余代码……
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     6028 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 01:49 PVG 09:49 LAX 18:49 JFK 21:49
    Do have faith in what you're doing.
    ubao 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