辩证地看待"重新发明轮子"
bigwhite · · 2965 次点击 · · 开始浏览C程序员骨子里都有一种"重新发明轮子(Reinventing the Wheel)"的特质。在面向对象、组件化流行以及崇尚复用的今天,这种特质似乎总是被认为是反面教材。但伟大的毛主席教导我们:要辩证地看待一切事物, 凡事无绝对。事物都是有两面性的,有好就有坏,有坏就有好。拿"重新发明轮子"这事而言,我们除了看到其弊端外,还要充分领会到其好的一面,不能一棒子打 死,这样才能在特定的场景下作出正确合理地判断。
关于这个题目我不打算长篇大论,几个鲜活的例子便足矣让大家看到"重新发明轮子"的另外一面。
我们来回顾一下IT技术发展道路上的一些产品或工具的演化和变革历程:
- 从Apache到Nginx
- 从CVS到subversion再到git、mercurial
- 从memcached到redis、leveldb
- 从symbian、WindowsCE到android、iOS
- 从Unix到Linux
- 从Perl到Python,再到Ruby
- 从C、C++到Go
- 从IE到Firefox、Chrome
- 从普通mp3 player到Apple的iPod
诸如此类。有些举例你可能觉得有点牵强,不过没有关系。你只要认同其中一两个即可。我想说的是一个结论,那就是"重新发明轮子"在某种程度上是推动进步和变革的一种原动力,这就是"重新发明轮子"的另外一面。因此辩证地去对待"重新发明轮子"才是一个专业程序员应该具备的正确态度。我们不应该在所有场合都 否定"重新发明轮子",因为你可能会扼杀一种创新,甚至是一个伟大工具或产品的诞生。
© 2012, bigwhite. 版权所有.
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
C程序员骨子里都有一种"重新发明轮子(Reinventing the Wheel)"的特质。在面向对象、组件化流行以及崇尚复用的今天,这种特质似乎总是被认为是反面教材。但伟大的毛主席教导我们:要辩证地看待一切事物, 凡事无绝对。事物都是有两面性的,有好就有坏,有坏就有好。拿"重新发明轮子"这事而言,我们除了看到其弊端外,还要充分领会到其好的一面,不能一棒子打 死,这样才能在特定的场景下作出正确合理地判断。
关于这个题目我不打算长篇大论,几个鲜活的例子便足矣让大家看到"重新发明轮子"的另外一面。
我们来回顾一下IT技术发展道路上的一些产品或工具的演化和变革历程:
- 从Apache到Nginx
- 从CVS到subversion再到git、mercurial
- 从memcached到redis、leveldb
- 从symbian、WindowsCE到android、iOS
- 从Unix到Linux
- 从Perl到Python,再到Ruby
- 从C、C++到Go
- 从IE到Firefox、Chrome
- 从普通mp3 player到Apple的iPod
诸如此类。有些举例你可能觉得有点牵强,不过没有关系。你只要认同其中一两个即可。我想说的是一个结论,那就是"重新发明轮子"在某种程度上是推动进步和变革的一种原动力,这就是"重新发明轮子"的另外一面。因此辩证地去对待"重新发明轮子"才是一个专业程序员应该具备的正确态度。我们不应该在所有场合都 否定"重新发明轮子",因为你可能会扼杀一种创新,甚至是一个伟大工具或产品的诞生。
© 2012, bigwhite. 版权所有.