阅读this topic,我记得有些东西总是让我烦恼。
长期存在的某些实践,方法或其他方法,众所周知和使用。然后有人写了一本书,在它上面写了一个新的花哨的名字,从无到有它开始出现新的,革命性的,下一个大的东西等...
设计模式是众所周知的解决方案的组合,它们已经成熟并成为“集体智慧”,它们不是普遍的法律,也不是由GoF创建的。你不需要阅读这本书来本能地应用其中的一些。这些模式由他们自己演变而来,GoF只是将它们粘在一起书中。
作为Phil Factor points out,极限编程也没什么新意。
还有什么让你觉得“我以前见过这个......”?
答案 0 :(得分:6)
Ajax是由很多人完成的,早在这个名字被放到它之前。
答案 1 :(得分:3)
REST基本上就是HTML的设计目标。
答案 2 :(得分:2)
我认为Greenspun's Tenth Rule of Programming就是你要问的一个例子:
任何足够复杂的C或Fortran程序都包含一个特殊的,非正式指定的错误驱动的一半Common Lisp的慢速实现。
答案 3 :(得分:1)
有很长的列表here。
答案 4 :(得分:1)
Dependency Injection看起来很像人们在Java早期所做的事情,其中一切都有接口,甚至是不需要接口的东西。变成界面汤。虽然在它上面放了一个漂亮的名字,然后构建一个框架再次让它变得很酷。
答案 5 :(得分:1)
"directory"(UNIX)/“文件夹”(Mac / Windows)/等的无偿新名称(HDF5中的“组”,{{3}中错误选择的“存储库”在SurroundSCM等等中的“项目”等等。)
同样重新使用和混淆使用诸如“项目”,“会话”,“工作区”,“解决方案”(Visual Studio)之类的术语,用于集成开发环境的GUI状态的序列化。
答案 6 :(得分:1)
我认为很多人会承认Ruby是Smalltalk的重新发明。
答案 7 :(得分:1)
重构是我们一直以来所做的事情的新名称,以更好的方式重写现有代码。
我同意Christer Ericson当他说“重写”某些东西从未意味着“从头重写”。当我重写某些东西时,如果我没有特别的理由抛弃每一行代码,我总是根据以前的版本来做。因此,“重构”对我来说似乎是一个毫无意义的词。
答案 8 :(得分:0)
分布式版本控制系统背后的许多想法很久以前就存在于大型机上。