今天听了易老师品三国之:诸葛亮为何选择刘备那集。说到诸葛亮的读书方法,谓之:“不求甚解”。也许乍看之下,我们会对“不求甚解”这样的方法提出质疑,这难道不是我们所谓读书的大忌吗?
请别急,听我慢慢道来。 诸葛所谓的读书的“不求甚解”,乃掌握文章之精髓,不故意去追求细节的完美。成大业者,不拘小节也。在现在的社会,效率决定了一个人的成败。特别是在信息产业这行,如此之多的先进技术,你是不可能一一掌握的,那就要你自己去选择适合你的技术方向,去用最有效率的方法完成你的任务。 “战略上要藐视敌人,战术上要重视敌人。”这句话是毛主席在革命战争时候总结出来的一句名言。 爸爸小时候常常用这句话教育我,但是那时候的我根本不懂这句话是什么意思,也就根本没听进去。现在细细回想起来,要真得能够读懂这句话,对一个人的人生发展是有何其大的作用!
我是一个严重的“追求甚解”的人。从小开始,我就有一种打破沙锅问到底的态度对待任何事情。
但是前提是我在乎这件事,觉得它值得我去做。我很相信自己的思想,我认为应该去做的,我会用尽一切办法去把每一个细节做到完美。还记得上高中的时候,老师总是说我太钻牛角尖。举个例子:比如牛顿第一定律:任何运动的物体都具有惯性。 当时学到这个的时候,我就一直在想为什么物体会有惯性这个问题,大概整整困扰了我有一个月的时间,也就是因为老在思考这个问题,做作业的时候经常跑题,出现这样的状况,这题我明明是解出来了,可是我自己还会在里面想很久,根本问题就是我没有想明白为什么会有这个定律。我上中学的时候经常自己思考这些“无聊”的问题,很多时候因为这样的问题,我都到了吃不下饭的地步。可是爸爸妈妈问我为什么,我自己却也答不上来。有时候会因为想到了一点点这些问题的答案,而欣喜若狂。可是过一会,我又回到“郁闷”的状态,又仔细想过后,我的答案还是有缺漏,因为我又会问自己:“为什么会有力?” 。。。。。。。。。
联系自己目前在学习的J2EE技术,正可谓,言之有理也。 J2EE的技术筐架何其之大,要想掌握其中所有的知识,没有个三五年,我想很难。况且就算你觉得你掌握了,你敢保重你不会忘记?如果你用上了“不求甚解”的学习方法,在掌握了一定的基础知识以后,把主要精力花在研究Design-Pattern,软件的架构等方面,而去忽略一些不必要的细节,我想这时候你就可以成为一个“从战略上藐视J2EE”的高手,这也是这篇文章的主题之所在。大家都知道,一个软件的成功在于设计。在软件设计阶段,你用良好的设计模式去设计这个软件,对开发的效率,日后的维护都会有很深的影响。举个最简单的例子,开发一个农场系统,需要你对产品,生产方式进行模拟。一个没有学过模式学的人,或者只学过,但是并不会用的人,写出来的程序可能是在每个产品类里定义产品的变量,方法。
public class apple { public class Veggie { .............................
String color ; String color ;
............... ...............
............... ...............
public void factroyApple() { public void factroyApple() { ............................
doSomrthingWithApple(); doSomethingWithVeggie();
................ .......................
} }
} }
但是如果你用工厂模式
public class Factroy { public class Apple {
public Apple factroyApple () { priavte String color;
.................. ..................
}
public Veggie factroyVeggie() { public String getColor(String color) {
...................... this.color=color;
}
} ..........................
如果日后你要在这个农场系统中增加产品,你只需要增加一个产品类,而不需要再写生产方法。这也大大增强了系统的可维护性。
J2EE技术发展到今天,已经有很多的模式可以供我们在开发的时候选择,Struts,Spring......如果我们掌握了J2EE技术的设计思想,对于一个项目的开发,我们就可以做到从"战略上藐视J2EE"。