问题:
我们都在不断的学习中,但在学习的过程中,我们有时会有这样的感觉,为什么我一直在努力了,可却效率不高了,或是提升的空间变慢了许多了,更甚至没有什么进展。但我这边所说的并不是说所有的,而是对于我碰到的这样一个情况。
我自己就是碰到了这样的一个问题,在之前的一段时间里,我努力的学习着各种知道,各种框架,如mina,tiles2,maven,log4j,tomcat等等,我发现我可以很快的上手,但在这里面我发现,我仅仅承担着一个使用者的身份,我想深入去学习,想知道怎么才能更好的学习。看源代码,太多的内容,无从下手,看边看边打代码,碰到问题网上有些是找不到的。
发现问题:
就这样我感觉自己面临着一个瓶颈了,我需要一种突破,这个突破可以带给我很大的提升的空间。就这样,我找了几个比我经验丰富的同事和师傅交流,我发现,我自己出现了一个问题。
无从下手:
“无从下手”是个很严重的问题,一个不知道怎么学的人,是很难学得会的。 只是一味的看源代码,只能看出的是一堆的代码,不能清楚的理解什么。
解决办法:
在交流的过程中,我懂得了,要学会去看写这些代码的人的心境,思路。可以看出,这些框架都有着很强的扩展性,而扩展性也表现出了框架内部的功能模型清楚完整,这时就需要把框架里面的底层模型了解了,再从每个模型入手,去了解用的是什么设计模式,如何的再写这样的框架出来。这样去一点点的突破,最后就能很好的做到。
感悟:
这些开源的框架和自己写的代码比起来,我真的感觉到很惭愧,别人注重的是扩展性,灵活性。而我们自己的代码往往总是完成我们需要的问题就OK了,没有去想太多,是否支持很好的扩展,是否是模块分清楚了。一个工程分成好几部分。
行动:
就是这样,我同时把我的毕业设计重新做了,我发现自己在写的过程中也清楚了许多。我学着模块化的去学习,模块化的去写代码,这样让代码更加清晰,让自己更加清楚程序结构。
总结:
这只是我的一些感触,我也将用这样方法尝试下去,希望用实践来证明它的正确性。一起努力。