论不重复造轮子
本人学生,早就听惯了别人说不要重复造轮子。但我现在在看irrlicht(开源游戏引擎)源码时,看到该引擎是尽量不用c和c++的函数,而是自己实现;同时,像OpenGL和DirectX中已实现的函数也是尽量不用。这是违反了“不重复造轮子”这个道理吗
------解决思路----------------------不要重复造轮子是对普通人说的。
其实正确说法是不要轻易重复造轮子。
重复造轮子的坏处是浪费时间,而且普通人造的多半没有买的好。
如果你有特殊要求,重复造轮子有的时候是可取的。
你看到的例子,也许它的思路是想构造跨平台、跨语言的代码。
------解决思路----------------------不重复造轮子是一种理想,也仅仅是做选择时的一种考虑。
各大公司都是在拼命造自己的轮子,希望别人不要再造轮子了,依赖自己,成为自己生态系统下的一员。框架/引擎的开发者会考虑依赖第三方越少,自己的选择越自由,不能让轮子束缚自己的发展。应用软件/游戏开发者往往一开始自己也造不出轮子,不得不依赖各种现成的平台/框架/库搭建需要的功能,等现成的轮子不够用了,只好自己扩展或者做新的替代。
其实最后就是自己觉得需要就造,不需要就不造。