为什么你应该看一眼 gem 的代码行数
来源: spinel.coop — 2026-09-23
概述
作者提出一个简单的方法:读一个 gem 的 README 时,先在心里估一下它的实现大概需要多少行代码,再用 cloc 实际统计一下,看差距有多大。如果实际比预期少,说明实现里可能有值得学习的手法,比如没见过的 Enumerable 方法、你没想到过的线程安全处理,或者有意思的类组织方式;如果实际比预期多,那可能是你对问题域的复杂度估计错了,也可能是它抽象过度、过于密集,未必值得依赖。他把自己的设计目标叫做「轻松的阅读」:资深开发者最好能在一小时内看懂一个 gem 在做什么,而他的两个 gem 都在 100 行以内。
核心要点
- 方法很简单:先估行数,再用 cloc 实测看差距,加上 --by-file 也会很有意思。
- 实际行数少于预期时,值得深入读一读,看是否有可以借鉴的实现思路。
- 实际行数多于预期时,可能是问题域比你以为的更复杂,也可能是抽象过度因而不宜依赖。
- 作者的设计目标叫「轻松的阅读」,判断标准是资深开发者能在一小时内看懂一个 gem 在做什么。
- 他认为 AssociatedObject 与 Performs 这类想法大约值 100 行代码,再多就是过度投入,不值得继续维护。
金句
如果整体概念容易辨认,它自然就会约束复杂度,进而也约束了代码行数。
👍 0
👎 0
← 返回 Lobsters 首页