根据我观察我周边的一些.net和C++程序员,我发现一件很有趣的事情。当遇到一些复杂问题的时候,比如说需要分析一大批数据,不同的人会选择不同的方法。有一些人会选择使用自己熟悉的编程语言去写一个一次性的小程序,有一些人会选择使用脚本语言写一段脚本去分析,有一些人则会想办法去用强大的excel去解决问题。
根据我的小样本观察,厉害一点的人往往会选择脚本,或者直接用一些excel公式去快速的得出一个结果。其他人则会选择使用自己熟悉的语言,比如说C#去写一个小程序进行处理,最终还是能够得到结果,不过花的时间可能会久一点,写的代码多了一点。但是这些人往往自我感觉良好,因为自己刚刚写出来一个小程序能够统计出来这么复杂的数据,心里暗爽。
我并不是想说明写脚本的人就nb一点,写代码的人写小程序的人就笨一点,也许写代码的人写小程序的人们中也有牛人吧。但我觉得那是一种低效的办法,因为他们干了很多不需要自己干的事情,而且还很可能干的比脚本语言的实现差。如果是想锻炼编码能力的话没问题,但是如果说从解决问题的角度来说这是一个低效的选择。写那种一次性的代码对于我们其实没有太大帮助,因为你知道以后不会再用了,所以你很可能写出来的是一些很低效很搓很难维护的代码。这样很可能会养成一些不好的习惯。
我还可以列出很多自己实现的缺点和脚本实现的好处。但是我更想从另一个角度去看待这类问题。我认为那些人花更多的时间去写了更多的代码不是因为他们勤奋,而是因为他们"懒",懒得去思考,懒得去找更高效的方法,懒得去熟悉一门脚本语言,从而失去了变更高效的机会。
所以我认为我们遇到一些问题的时候除了思考怎么解决问题本身以外,还要花点时间问一下自己,我找到的这个方案真的好么?我选择这个解决方式的原因是因为这个方式真正能够最好的解决问题还是因为我的知识让我下意识得去选择了这种解决方案。如果有更高效的方式,我认为应该毫无疑问得去选择这种方式。很可能你在这次付出更多的时间和精力去完成这个任务,但是当你以后再遇到类似问题的时候你就可以变得更高效了。
我之前就是属于那种低效的人,前段时间开始意识到这个问题于是开始去好好地学习一门脚本语言。如果你和我之前一样也经常为了一些小的事情去写一些一次性的代码,我建议你也去学习一门脚本语言来处理类似的事情。
-The End-