在我和一些朋友深入讨论"底层"的技术细节时,经常被一些"超级大师"(火星来的)
讽刺为造轮子,我总是淡然一笑.因为说你在干什么事只是说了一个事实,而这个世界并没有
任何标准来评判这个行为是否正确,也许只有上帝知道.
别人已经发明的轮子我们是否还需要造?
当然需要,就在某些讽刺我们在造轮子的"大师们"的言论中竟然还会加上一两句:
中国的IT技术就是因为你们这行人才永远赶不上别人.
看看这种前后矛盾的大师观点,既然反对造轮子,那么很多技术已经被别人发明了,
中国为什么还要再去造一次轮子?如此说来,龙芯这些项目都是无意义的事了,国家花那么多
经费造了来的只是别人多少年前发明出来的轮子,有什么意义?
其实太多时候,造轮子是有意义的,也是非常必要的.因为自己造的轮子对于自己而
言是最合适的.或者抬高一点说我自己认为我造的轮子别人的好.如果你有能力造轮子,而且
造得快,那么我还真找不出不造轮子的理由.
节省时间吗?不一定,你去买别人的轮子要从家里到商场交易再运回来,对于有能力
造轮子的人这段时间足够造出比买来的轮子更好用的轮子了.举一个我们经常用到的上传组
件的例子,任何人第一次下载smartUpload等这种通用轮子后,读文档,学习使用方法,拿到自
己的代码中测试,时间不会少于30分钟吧?但对于精通http协议的人,把客户端打包提交过去
的无符号字符序列分解为需要字段和文件,30分钟也足够了,也就是说30分钟我同样实现了一
个轮子,而是自己实现的轮子至少要比那个通用的轮子调试,调用要方便多了,更别说修改其
中的bug了.另外我自己实现的我可以非常轻易地"翻译"到别的语言中,比如再花20分钟我可
以实现成c#中的上传组件,那么你试试把smartUpload这个轮子"翻译"到c#中看看要多久?
如果你的能力不足以造轮子,那当然没有必要在需要轮子的时候先去研究如何造,然
后再自己动手打造.但如果你在买轮了的时间内可以打造更好的轮子,你就应该坚决地打造自
己的轮子!所以,是否应该造轮子,取决于你在还没有需要轮子的时候的知识积累,不是在需要
的时候才去研究如何造,而是在需要的时候就可以造出来.而且比别人买轮子更快,质量更好,
对于这样的造轮运动,实在想不出有什么可笑的,在我心目中那是软件技术的最高境界.
分享到:
相关推荐
很多时候,都听人家在说不要重复制造轮子,要站在巨人的肩膀上等....不过让我感到有点困惑的是,怎么样...那是不是说当我们在写一个程序的时候就不应该自己设计,而是首先到网上去找,只有找不到的情况下才自己去写呢?
在根据SGI-STL仿造轮在的过程中,学习c++和数据结构
数据描述符(descriptor)和存取描述符均具有以下可选键值:当且仅当该属性的 conBgurable 为 true 时,该属性描述符才能够被改变,同时该属
天天造轮子,手写面试常见源码.zip
NULL 博文链接:https://basil1292.iteye.com/blog/459911
【unity造轮子】2d敌人AI的实现,并自动躲避障碍物
winform通用开发框架 这个主要就是为了一般管理系统重复避免造轮子,不需要在关注权限 页面等,新增功能只需要新增form界面并完成自己的业务,在系统配置即可。 个人主页有基于该框架开发的简易进销存软件和喷码软件
# 【Unity造轮子】实现一个类csgo的武器轮盘功能 # 作者信息 姓名:向宇 博客:[https://xiangyu.blog.csdn.net/](https://xiangyu.blog.csdn.net/) # 文章说明: ...
java实现excel转pdf文件,并且支持excel单元格中带有图片的转换 基于 aspose,Excel转为 pdf工具类 Java Excel转为PDF(aspose)工具类 复造轮子 复制即用
自己造轮子:一款实用的Android广告栏实现过程2016-01-23 安卓应用频道 安卓应用频道(点击上方公众号,可快速关注)来源:dongjunkun链接:
WAF 绕过-权限控制之代码混淆及行为造轮子#Safedog 代码层手写及脚本绕过变量覆盖,加密混淆,异或生成#BT Aliyun 代码层手写及脚本绕过编码解码
适合无法使用serlvet3.0的用户,适用于老旧系统使用。
不要再重复造轮子了,Hutool这款开源工具类库贼好使(csdn)————程序
npm让js实现了模块化,使得复用其他人写好的模块(搬砖)变得更加方便,也让我们可以分享一些自己的作品给大家使用(造轮子),今天这里我就给大家分享一个用命令行压缩图片的工具,它的用法大致是这样的: ...
使用说明: 1.将 libs 目录下的 protobuf 移动到自己工程的 libs 目录下 2.在 Target 的 Header Search Paths 中添加: ...重新造轮子?没问题: http://blog.csdn.net/yang3wei/article/details/9369735
springboot+mybatis-plus 生成service、dao、po层
人体关键点、人体属性、动作捕捉、手势识别项目;易于使用,用于交流学习
自己造的一些C++的轮子,用来make fun..zip
csharp/c#/.net
为写简单 HTML5 展示页的同志们造的轮子,基于 AngularJS 1.x gulp swiper