程序员应知——善于借鉴

📅 2026/7/5 3:54:32
程序员应知——善于借鉴
最近几天对D语言有了一些了解据说能够具备和C、C一样的高性能语法类似于C#和Java并且支持当前比较流行的语言——像Ruby和Python——的一些新特性而且微软还提供了Visual D的插件可以安装在Visual studio中从而使用它来开发D语言的程序。我们会发现其实这门语言在很大程度上是以往各种语言长处的结合不知道是否实现了这一点但目的应该是这样与其说是一种新的语言不如说是在借鉴了很多语言之后组合出的一种语言。由此我们可以发现借鉴具有很强的力量。通过借鉴我们能够创造出一些新的有自身特色的东西来。说到借鉴就不能不说创新曾经有位朋友拿微软和苹果做过比较微软最近几年来在技术上一直没有非常明显的创新似乎总是跟在别人的后面走比方说云计算比方说手机开发再比方说服务式的web应用等等。而苹果的东西似乎每一种都具有很强的创新性iPad、iPhone、手表式的ipod还有传言中的裸眼3D功能的iPad等等都让人能够眼前一亮。的确创新很棒能够产生不错的效果。相比之下借鉴似乎就要差一些而且“山寨”和借鉴之间也有些搞不清楚。然而我们也应该看到创新其实也是建立在借鉴的基础之上而且借鉴也能够产生很不错的效果。毕竟创新力不是说说就能具备的也需要长时间的积累和思考而且还有一些天赋的成分在里面试问世界上又能有几个乔帮主级别的人物。而借鉴往往更适合我们这些普通人能够让我们从中受益。作为程序员来说也有很多地方都可以采用借鉴的方式来提升自己的能力。比方说前几天我在百度Web app开发大会上的演讲中谈到Web应用前端设计如何能够美观的时候我就借鉴了版面设计的理论来自于《写个大家看的设计书》web应用的设计也应该遵循重复、对齐、对比、亲密性四种原则那样就会达到美观的效果。而谈到设计需要规范的时候我也借鉴了项目中经常会使用的代码规范对于前端设计也一样要有相应的规范那样才能够更利于开发和后期的维护工作。再比方说之前的一篇blog中我谈到了如果《以投资的观点学习编程》这正是在听了公司投资部经理关于投资的一场讲座之后想到的学习编程和投资一样也有不少可以触类旁通的地方。不仅仅如此软件这个年轻的产业本身很多方法都是从其他传统行业借鉴过来的软件架构在很大程度上借鉴了建筑学的知识而精益的理论更是来自于生产行业我们能够看到软件行业的发展与对其他行业的借鉴是分不开的。而作为程序员我们应该借鉴什么呢首先我想要借鉴已有的程序和项目当我们想要完成一项任务的时候不一定要从零开始毕竟不是考试我们完全可以先查看一下是否已经有类似的程序或者类似的项目看看他们是如何完成的而且在完成的过程中是否有相关的经验和教训那些都是非常宝贵的财富。当然我们不是要完全地复制而是要“批判地学习”在理解了已有内容的基础上加上自己的思考从而创建出最适合我们自己的程序。在这个过程中借鉴本身就是学习和提高的过程。其次我想可以借鉴在非计算机领域解决问题的方式。我们知道计算机真正广泛应用在解决问题上也就是几十年间的事儿之前遇到问题传统的行业中一样可以解决也都形成了不少方法论。那正是我们需要借鉴的地方不一定在解决问题的时候完全要依赖于计算机先从非计算机的方式入手放宽一下自己的视野可能会有更好的效果。想要真正实现良好的借鉴我想我们要时刻有借鉴的准备机会总是留给又准备的人的当我们在平时的生活中或者是在各种书籍中发现好的解决问题的方法时就可以试着思考一下是否可以借鉴到计算机领域中这样在以后编程解决问题的时候可能就会不自觉地使用了。切不可把自己处于一种封闭的状态对外