前段时间不是迷上魔方了嘛?经过这段时间的苦练,目前已经能够做到忘记公式,靠本能的反应去完成。但是,无论我怎么刻苦训练,最快的还原时间总是无法突破2分钟。
看过电视的同学都知道,有的人只用几十秒就够了,最快的记录好象是8秒,抛开那些偶然的因素不说,一般情况下在几十秒内还原应该是正常的。我为什么就不能突破2分钟呢?是我还不够努力,还是魔方不够高级,这些因素当然也有,但我知道,最重要的还是方法问题。当时,在学习的时候,老师已经说了,这种方法不是最快的,但却是相对容易学的,适合初学者。因为公式没有那么复杂,所以记起来会更容易一些,但相应的步骤就会更多,所需要花费的时间当然也会更长,无论你怎么练习,每种方法都会有一个极限,一个没有办法突破的极限。显然,要想在时间上有所突破,只有去学习更高级的公式了。
出于惯性,这事儿又让我联想到程序界。只要有人的地方,就会形成小团体,不知从什么时候开始,程序界也分成了若干的派别。这里面最典型的就是.net和java了。大家没事儿经常贬低对方,从而抬高自己。这写程序和玩魔方还真有些类似,为了达成目标,有不同的方法供我们选择。你可以选择.net,也可以选择java,也可以选择其它,甚至更低级的语言。但是,该如何选择呢?这里面就有个权衡的问题。简单的公式好记,更容易实现我们的目标,完成儿童时的梦想,但效率会低一些,复杂的公式难记,如果你想在比赛中表现自己,那就只能选择它。写程序也是一样,人们发明高级语言,目的是为了提高编程的效率,当然这会带来运行效率的下降,但机器性能的提升又可以弥补这一问题,而且,对于日益复杂的应用,直接用汇编这也不现实。但在有的情况下,比如有些嵌入式应用,有硬件的限制及运行效率的要求,汇编显然是最好的选择。
我们用高级的语言,能够更快速的开发出所需要的程序,但程序的性能难免会有一些损失,我们赢得的是开发的时间。如果你对性能要求很高,可以选择更低级的语言,当然,这可能会比较麻烦一些,需要记住更多的公式,需要写出更多的代码,更要求你已经熟练掌握了这一技能。但是,这又反过来会涉及到开发效率,问题总是具有两面性。
魔方却有六个面,你是想要玩的快,还是想要容易玩,这的确是个问题。
******