获得徽章 0
“DRY(Don't Repeat Yourself)”?哎,你说的这套理论听着很高大上,但它真的有用吗?大家都知道“不要重复自己”,但他妈的现实中哪有那么简单。编程这事儿,有时候就得重复,你能不能在复杂的项目里一套通用的方法就解决一切?别傻了,每个模块、每个需求都不一样,你越想减少重复,越他妈陷入“死代码”的深渊。

你说的 DRY 是啥?就那种永远试图让代码“优雅”,但最后搞得自己头大,根本不管项目需求的东西。你有多少次为了遵守 DRY,搞了一堆抽象类、接口、继承链,最后代码不但没变少,反而看得让人更迷糊。DRY 其实就是个伪命题,它的核心不是“代码不能重复”,而是合理复用。问题是,你他妈到底能不能清楚地判断什么地方能复用,哪些地方就得拆开?

举个简单例子,你每次用的代码都得抽成函数,抽成类,最后结果一堆无聊的接口和配置,这就好看了吗?“拷贝粘贴”有时候反而更高效,你不相信?试试在大项目中,每个函数都严格遵守 DRY,最后你会发现,代码越是分得细,你维护起来就越他妈麻烦,改一行,可能得改十行,最后还不一定能确保全局的一致性。

所以,DRY 是对的,但你要明白什么时候用,什么时候不要做傻逼式的“优化”。编程最终的目标是解决问题,不是让你追求什么所谓的“优雅”,搞一堆不必要的复杂度,弄得自己一头雾水,代码反而变成了个鸡肋。

有时候,“拷来拷去”的确能节省时间,有时候,它更符合需求,更高效。如果每次都要为了 DRY 按照规范来,你倒不如直接把代码硬编码一次,完事了,省得再浪费时间做无用的优化。
展开
评论
前端 @保密
前端 @保密
下一页
个人成就
文章被点赞 3
文章被阅读 7,654
掘力值 172
收藏集
21
关注标签
18
加入于