请教:如何去分析源码

07-09-01 scorpioer
请教,如何去阅读、分析一份源码,比如说分析Struts的源码,谢谢。
    

1
banq
2007-09-02 09:08
这是很小但是很重要的问题:

在java中分析源码学习源码,已经不是传统意义上的看到源码就分析学习,而是有的放矢,否则浪费时间和精力。

简单地说:框架软件的源码没有必要去分析,例如Struts等,只要了解其大概流程就可以了,因为框架软件保证其应用简易和约束性,会有很多烦琐细碎的代码,这些都妨碍了可读性,打个比喻,框架源码就象JDK源码一样,只要会用,无需去学。

框架应用软件源码应该去读,如何使用框架完成自己的系统。

说到底,还是和大部分程序员向下思维观点所致,有的程序员为表示自己水平高,说struts源码都读懂,我会用很惊讶眼光看他,不是走火入魔就是愚笨的人。

包括学习Spring/Jdon框架这些,都没有必要去读源码,很多热心网友阅读Jdon框架源码,提一些问题,初衷是好的,但是方向错误的。以前一些很有名的高手拿Jdon框架做文章,当时根本没理他,因为他基本专业方向就是错误的,思维向下的,看一个框架好不好,不是看框架源码写得好不好,而是看在多少个不同项目上应用如何,从灵活性 快速性等几个指标来评价。

分析学习源码是学习JavaEE必不可少的阶段,但是必要知道重点和方向,否则才能收到事半功倍的效果,否则花了很长时间和精力,都没有进步。

分析源码最好对比着看,例如struts框架是MVC模式,那么我看看不使用struts框架的源码是怎样(如Jive2/Yazd),然后我再看使用了MVC框架后的源码,有什么不同(如JiveJdon3),这样,对比才领会不同。

还有宠物店,看看SUN的Petstore,和Spring的JPetstore,或Jdon框架的Jpetstore,他们有什么不同,这样,视野开阔,就象买东西,好的坏的都看过,这样才知道掂量分寸。

[该贴被banq于2007年09月02日 09:10修改过]

[该贴被banq于2007年09月02日 09:15修改过]

dajay520
2007-09-03 12:05
banq老师

我想问下 孙卫琴 的<精通Struts>一书中 对Struts流程的源码做了介绍 并且说阅读Strtus源码可以增加对框架的了解 从而更好的应用

我感觉你们的观点是不同的

你对此有何感想?

hzxdark
2007-09-03 12:07
我的想法是,不要看 孙某人 的书。 个人认为,此人出的书在误人子弟。

banq
2007-09-03 18:20
>阅读Strtus源码可以增加对框架的了解

这其实是个人时间精力问题,还有面向什么人的问题,现在还有很多向下思维的人只有读框架源码后,心里才放心用这个框架,否则,心理不放心或者不服气,这些都是心理层面问题。

我提的是一个能够高效率学习Java的路途(脑筋急转弯,但是不是人人能够转的过来,只要转过来,窗户纸就捅破),但是条条大路通罗马,别人指的路也是可以通罗马的。

学习可以多吸收众家之长。

猜你喜欢
2Go 1 2 下一页