V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Livid
V2EX  ›  程序员

关于如何写持续有用的代码

  •  
  •   Livid · 2010-12-27 04:49:03 +08:00 · 5828 次点击
    这是一个创建于 5087 天前的主题,其中的信息可能已经有所发展或是发生改变。
    个人体会(偏向 web developer):

    1. 用 Tornado,Nginx,Redis,Memcached 和 MySQL。

    2. 围绕需求的核心,写尽可能完善的实现。

    3. 围绕大众需求:图,文及搜索。

    4. 避免那些与核心需求无关的酷元素。有的东西,在当时觉得酷得不行,但是一年之后你只想把它从实现中去掉。

    5. 让实现尽可能短,并且不要重复。但是不要刻意为了实现这一点而浪费时间。
    14 条回复    1970-01-01 08:00:00 +08:00
    TerranC
        1
    TerranC  
       2010-12-27 09:42:02 +08:00
    第四条值得思考
    gaowhen
        2
    gaowhen  
       2010-12-27 16:57:27 +08:00
    关于第4点,最近也有体会。无论多炫的东西,总归会审美疲劳的。
    还是简约能长久啊。
    TheOnly92
        3
    TheOnly92  
       2010-12-27 21:00:43 +08:00
    我个人觉得,编程就好比写作,没有任何人会拿原稿来出版。一开始写出来的东西或许乱七八糟,但是原稿就是必须经过三番四次的修改,改进。没有任何一个程序员可能一开始就能够写出“好”的代码,尤其是项目的最初时段。如果执着于所谓的 style 或者任何其他无聊的事情,那么你可能什么也写不出。一开始最重要的是将你的想法转换成代码,然后进行不断的改进、修改,不是吗?

    或许有些离题,但是我个人对于编程的想法如上。
    sharkli
        4
    sharkli  
       2010-12-27 21:09:50 +08:00
    @TheOnly92 如果一开始就搞的比较乱,最后可能会一团糟。
    stranbird
        5
    stranbird  
       2010-12-27 21:12:04 +08:00
    @sharkli 所以《重构》这本书就发挥他的作用了。
    sharkli
        6
    sharkli  
       2010-12-27 21:24:58 +08:00
    @stranbird 话说我写的代码真的有点烂。复用性,可读性都很差,项目紧也不敢重构。唉唉,真是丢人。
    darasion
        7
    darasion  
       2010-12-27 21:27:11 +08:00
    我不知道。这个问题太复杂。
    TheOnly92
        8
    TheOnly92  
       2010-12-28 10:33:34 +08:00
    我个人还没有进入企业界,但是进行个人项目时,往往都是要重构几次的,这样才能够让自己编码时开心一些。而且每次重构后对于项目的需求更加了解,况且重构虽然是从 0 开始,但是也是拼命参考之前写的再继续写下去,因此重构也没有花多大的时间和精神。
    timshi
        9
    timshi  
       2010-12-28 10:55:22 +08:00
    Always iterate, but do things the RIGHT way in each iteration.

    In other words, don't give yourself an excuse to write shitty code because you think you will iterate.

    Just like in daily life, you KNOW in your heart that you are doing things the wrong way. It always feels easier at the time, but don't do it. Code don't lie.
    xds2000
        10
    xds2000  
       2010-12-30 20:48:57 +08:00
    加一条,要定期修炼美学。
    myrual
        11
    myrual  
       2011-01-09 12:27:53 +08:00
    @TheOnly92
    同意。
    第一稿总是不好的。只要能持续的重构,最终会好的。
    来自于我的个人实际工作经验。

    至于为什么第一稿不好?
    可能是需求没弄懂,对业务理解不透彻,业务模型不完全合适,技术能力有限。
    以上都是可能的原因。但是若放弃了重构的勇气和追求卓越的理念,那么即使使用再好的框架,最终也会烂掉。
    也来自实际工作经验。
    walleve
        12
    walleve  
       2011-01-09 14:21:45 +08:00
    @xds2000
    should
    viewsun
        13
    viewsun  
       2011-01-10 14:49:50 +08:00
    我觉得吧,不当只能专注于埋头写代码,还得发展其它方面的能力,美工,用户体验,产品设计,测试,做程序员还要有自己的创新思维,而不是别人给你想法,你就按着别的人想法盲目开发。只果只会单纯地写代码,那跟民工没什么区别。
    freefcw
        14
    freefcw  
       2011-01-10 17:26:16 +08:00
    看了这个标题表示很囧,和自己理解的完全不同

    说一下我自己的对持续有用代码的理解吧:

    1. 代码风格:纯粹的代码相关的,包括缩进格式,变量命名,边界检查,实现方式等等,这样有助于理解代码和调试bug
    2. 功能:尽可能的功能独立,模块化,做好自己的事情,可重复使用和代码持续有用是一个意义
    3. 注释:没有注释的代码是废品,有效的注释能够极大的提高代码可读性,降低代码的维护成本,延长寿命
    4. 文档:文档提供宏观上对代码的功能有直观的理解
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2687 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 05:26 · PVG 13:26 · LAX 21:26 · JFK 00:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.