yre*_*uta 6 language-agnostic abstraction modularization
刚刚在"你使用什么JS lib"民意调查中看到了这个评论
"@Xanti - 是的,是的,编程中的模块化和抽象是一种可怕的做法.调用其他函数的函数?浪费."
这让我很好奇,因为我正在使用Kohana框架为PHP和Jquery库的javascript.
为什么有些人会考虑抽象和模块化的不良做法?是不是为简化和加快开发而制定的框架和库?
这是投票的链接
Nor*_*sey 11
我发现过多的抽象可能会对您的工作效率造成危害:
选择不当的抽象可能会更糟,然后根本就没有抽象.
如果您需要阅读四个或五个不同的模块以了解简单算法的工作原理,那么抽象障碍可能不在正确的位置.也许有一个很好的方法来重构代码,或者可能只是去除障碍会更容易.
如果抽象不符合相对熟悉的想法,则新团队成员可能难以学习.
抽象不是"无意识的好"; 它的存在是为了特定目的.其中最常见的目的是
为了保护不变量的数据结构
为了封装设计决策有可能改变
我在抽象方面遇到的最大经验是我们的C--研究编译器.学生们习惯于在编译器类中看到更多的抽象:
每个抽象的服务的一个重要宗旨,为我们的研究,但总的效果是,这是非常困难的新学生学习的编译器.因此,即使原始评论是开玩笑的,也有一些地方抽象可能会导致问题.