源代码学习谈

来源:互联网 发布:淘宝买六味地黄丸 编辑:程序博客网 时间:2024/05/23 12:15

学习并调试可调式版的OpenJDK源代码,在看前最好能了解下java虚拟机怎么实现的,然后在此前提下学习jdk 源代码及流行的开源代码是一种很好的方法。

 

Eclipse看不到jdk源代码时候,只要attach source选择jdk目录下的那个src.zip即可。但是sun jdk自带的源代码包中并不含jdk的源代码,包含的只有java api的源代码,sun的私有包、本地方法、虚拟机的实现源代码都是没有的,jdk完整的源代码需要另外下载。

 

有必要学习很多流行的java开源框架吗?

Java中分析源码学习源码,已经不是传统意义上的看到源码就分析学习,而是有的放矢,否则浪费时间和精力。简单的说,框架软件代码没有必要分析,只要了解大概流程即可,只要会用,无需去学。 框架应用软件应该去读,如何使用框架完成自己的系统才是第一要务。

 

分析学习源码是学习JavaEE必不可少的阶段,但是必要知道重点和方向,否则才能收到事半功倍的效果,否则花了很长时间和精力,都没有进步。
分析源码最好对比着看,例如struts框架是MVC模式,那么我看看不使用struts框架的源码是怎样(如Jive2/Yazd),然后我再看使用了MVC框架后的源码,有什么不同(如JiveJdon3),这样,对比才领会不同。
还有宠物店,看看SUNPetstore,和SpringJPetstore,或Jdon框架的Jpetstore,他们有什么不同,这样,视野开阔,就象买东西,好的坏的都看过,这样才知道掂量分寸。

>阅读Strtus源码可以增加对框架的了解,这其实是个人时间精力问题,还有面向什么人的问题,现在还有很多向下思维的人只有读框架源码后,心里才放心用这个框架,否则,心理不放心或者不服气,这些都是心理层面问题。
我提的是一个能够高效率学习Java的路途(脑筋急转弯,但是不是人人能够转的过来,只要转过来,窗户纸就捅破),但是条条大路通罗马,别人指的路也是可以通罗马的。
学习可以多吸收众家之长。阅读别人的代码,关键是你要知道你为什么去读,你的目的是什么,你为了解决某个问题,还是为了理解其中的某些内容。没有目的的去读源码是有作用的,但是事倍功半。而一旦你知道你的目的了,那么阅读的方法也是不一样。譬如如果你是需要去验证某一项功能是如何实现的,那么最好结合运行、调试去读代码。而如果你要理解其设计,那么最好是结合编写测试案例的方式去读代码。总之一句话,找到最佳的路径到达你的目的地。

原创粉丝点击