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

建议@livid做开发的时候多用一些库吧,可以多精简代码

  •  
  •   newblue · 2011-04-02 09:52:18 +08:00 · 4493 次点击
    这是一个创建于 4988 天前的主题,其中的信息可能已经有所发展或是发生改变。
    像你在v2ex里面对用户输入进行判断,原本可以不用麻烦的,直接用一个form库去处理会简化很多代码,可读性更好。

    很抱歉的说,连续几天都在删你的代码,一个函数几页的代码,其实简化或者重构后,最多不会超过30行,极少数会超过。这几天删得特痛苦,唯一的收获就是你的v2ex很有重构的必要。


    if site_use_topic_types is None:
    s = '<select name="use_topic_types"><option value="1">Enabled</option><option value="0" selected="selected">Disabled</option></select>'
    else:
    if site_use_topic_types == '1':
    s = '<select name="use_topic_types"><option value="1" selected="selected">Enabled</option><option value="0">Disabled</option></select>'
    else:
    s = '<select name="use_topic_types"><option value="1">Enabled</option><option value="0" selected="selected">Disabled</option></select>'

    另外我觉得像这种代码,放在函数里面实在不妥,其实用form库,也就是几行代码的事情,连模板那边也可以用。
    7 条回复    1970-01-01 08:00:00 +08:00
    crazycookie
        1
    crazycookie  
       2011-04-02 09:57:29 +08:00
    form库是用着一个很蛋疼的东西
    特别是在里面添加很多attribute的时候
    用过cakephp的form helper
    也用过CI的form helper
    最后用过Kohana 的helper
    最后的最后:放弃不用,手写来的直接
    c
        2
    c  
       2011-04-02 10:01:16 +08:00
    ...
    dreamer
        3
    dreamer  
       2011-04-02 10:10:06 +08:00
    首先我说明一下,我不是为 @Livid 辩护。根据我的亲身感受,自己从头创造一个东西和修改别人的东西的难度是不可同日而语的。要开始启动一个项目,设计它的框架,完善它的细节,最重要的是——坚持完成它,这里面考验得更多的不是技术方面的东西,及早发布是保证项目可以完工的很好的手段。我记得 Rework 那本书里面说过,如果你一开始要建造一座大厦,就不要在开始的时候就注重厕所的细节,不然就永远没有完工的时候。lz 没有看到 V2EX 的发展过程,所以进来看到的就是不太完美的厕所,所以会指出很多缺陷。

    我猜现在 V2EX 应该也还处于发展的阶段,发布只是一个开始。里面肯定有很多 lz 所说的不够好的细节,但是既然大厦已经建造起来了,厕所和室内的装修应该也会很快跟上,说不定 @Livid 最近也正打算做。 lz 以后不妨多贡献一点儿代码,也继续提意见,相信所有人都会欢迎。
    phzzy
        4
    phzzy  
       2011-04-02 10:10:27 +08:00
    @crazycookie 感觉一切帮助自动生成html的东西,都是很蛋疼的东西,感觉做起来不能完全掌控
    crazycookie
        5
    crazycookie  
       2011-04-02 10:16:07 +08:00
    @phzzy 比如说后台大量的表单,我觉得自动生成还是比较靠谱的
    前台,自动生成的话,样式,显示效果和js调试都是一个痛苦的经历
    html 代码的编写其实是心理作用,用了好的编辑器其实效率很快
    PS:我是vimer
    每次想到,要给一个自动生成的html表单,添加不同的class,还有用js去做验证,我的手就有一种要去揉揉蛋蛋,说不疼的冲动。编程体验太差了,我能想到的 设计这种 html helper 出来的原因就是为了 快速编码后台吧
    virushuo
        6
    virushuo  
       2011-04-02 10:25:06 +08:00
    我觉得这是个有趣的话题,所以单独开了个提问,欢迎移步到这里 http://www.v2ex.com/t/10862 讨论代码过长是不是坏习惯的问题。
    newblue
        7
    newblue  
    OP
       2011-04-02 10:28:44 +08:00
    回复的人,回复的时候可以的话,请注明自己是否在用v2ex那套代码做产品是否做二次开发还有就是说明一下自己的感受!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3236 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 12:57 · PVG 20:57 · LAX 04:57 · JFK 07:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.