首页/开发/代码质量与评审速查/函数长度与文件长度:信号与陷阱
技术债与度量63 条

函数长度与文件长度:信号与陷阱

长度是弱信号:超长往往意味多职责,但机械切割带来碎片;更可靠的伴随信号包括认知复杂度、嵌套深度、被修改频率;长度阈值用于触发阅读与讨论,不是自动判罚。

阈值示例函数 >50 行、文件 >1000 行为讨论触发点
伴随信号认知复杂度、嵌套、变更频率
动作找到可命名的多职责再拆

拆前先自问

拆前先自问
□ 这个函数在做几件可命名的事?
□ 哪一段需要注释解释「做什么」?
□ 拆出的部分有独立测试价值吗?
统计口径排除生成代码与测试数据,只看人工维护目录
趋势观察新增长函数集中在哪个模块,回看分层设计是否缺失

易错点

  • 按行数自动判罚:碎片函数反而难追
  • 生成代码纳入统计:拉高指标且无意义,需排除

数据来源与参考

  • 《Clean Code》函数章节;长度统计的工程实践
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌