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

我们组 Code Review 时,规定每个类文件的行数不得超过 666 行

  •  
  •   KratosOmega · 58 天前 · 3169 次点击
    这是一个创建于 58 天前的主题,其中的信息可能已经有所发展或是发生改变。
    666 还是挺吉利的,如果超过这个行数,就要重构,直到每个文件的行数小于 666 行,真的有些累啊。
    不知道大家组内有没有这种规定?
    15 回复  |  直到 2019-12-30 11:13:50 +08:00
    cabing
        1
    cabing   58 天前
    必须滴。太长说明有问题。不符合单一职能原则。

    增加个规定,每个方法不能超过 88 行?每一行长度不能超过 66 个?
    KratosOmega
        2
    KratosOmega   58 天前
    @cabing 88 行这个不错,不过 git 不好自动扫描方法行数
    zhengxiaowai
        3
    zhengxiaowai   58 天前
    @KratosOmega 都是现成的 lint 工具,配置一下就好
    lotosbin
        4
    lotosbin   58 天前
    代码行数可以用来发现 代码坏味道 ,但是不是所有代码行数多的都需要重构,
    可以看下 http://www.ruanyifeng.com/blog/2018/09/complexity.html
    优秀的设计是 Deep Class,公开有限的接口,把大量细节隐藏在实现中
    cabing
        5
    cabing   58 天前
    Smash
        6
    Smash   58 天前
    Android 源码里面 View 类都好几万行。
    EscYezi
        7
    EscYezi   58 天前 via iPhone
    有就好了,之前在老代码里看到过一个方法四百多行的,实在受不了,拆分成几个五十行以内的方法。最近碰巧有新需求改这块,要是之前没拆,现在估计头都大了。
    KratosOmega
        8
    KratosOmega   58 天前
    @Smash 感觉也不能一概而论,如果是 widget 类代码,非业务型代码,可以稍微放松一下要求。那如果业务型代码,几万行怼一个类里是真的头大
    KratosOmega
        9
    KratosOmega   58 天前
    @zhengxiaowai lint 工具不好推行,要每个人都配置,而且不是强制性的
    jedihy
        10
    jedihy   58 天前 via iPhone
    代码不能复用的话,强行放到一个函数里面有什么意义
    wudaye
        11
    wudaye   57 天前 via Android
    @jedihy 复用不是函数封装唯一目的
    wudaye
        12
    wudaye   57 天前 via Android
    我觉得行数可以用来限制水平一般的人,比如我自己,防止写出难以维护的代码。但是对大佬就不适用了,jdk 里好多几千行的类
    akira
        13
    akira   57 天前
    这种硬性的要求很奇怪啊。。
    poplar50
        14
    poplar50   57 天前 via Android
    @KratosOmega lint 可以配到 ci 里,ci 不过不允许合并。
    vagranth
        15
    vagranth   57 天前
    我是觉得这个数有点少,刚看了一下最近写的代码,最大的文件是 841 行。
    顺便说一句,我记得 666 是恶魔的数字。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4060 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 08:13 · PVG 16:13 · LAX 00:13 · JFK 03:13
    ♥ Do have faith in what you're doing.