精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如何閱讀Java源碼,閱讀Java的真實體會

開發 后端
剛才在論壇不經意間,看到有關源碼閱讀的帖子。回想自己前幾年,閱讀源碼那種興奮和成就感,不禁又有一種激動。

 [[249655]]

剛才在論壇不經意間,看到有關源碼閱讀的帖子。回想自己前幾年,閱讀源碼那種興奮和成就感,不禁又有一種激動。

源碼閱讀,我覺得最核心有三點:技術基礎+強烈的求知欲+耐心。

說到技術基礎,我打個比方吧,如果你從來沒有學過Java,或是任何一門編程語言如C++,一開始去啃《Core Java》,你是很難從中吸收到營養的,特別是《深入Java虛擬機》這類書,別人覺得好,未必適合現在的你。

雖然Tomcat的源碼很漂亮,但我絕不建議你一開始就讀它。我文中會專門談到這個,暫時不展開。

強烈的求知欲,我認為是閱讀源碼的最核心驅動力。我見到絕大多數程序員,對學習的態度,基本上就是這幾個層次(很偏激哦):

1、只關注項目本身,不懂就baidu一下。

2、除了做好項目,還會閱讀和項目有關的技術書籍,看wikipedia。

3、除了閱讀和項目相關的書外,還會閱讀IT行業的書,比如學Java時,還會去了解函數語言,如LISP。

4、找一些開源項目看看,大量試用第三方框架,還會寫寫demo。

5、閱讀基礎框架、J2EE規范、Debug服務器內核。

大多數程序都是第1種,到第5種不光需要濃厚的興趣,還需要勇氣:我能讀懂嗎?其實,你能夠讀懂的。

耐心,真的很重要。因為你極少看到閱讀源碼的指導性文章或書籍,也沒有人要求或建議你讀。你讀的過程中經常會卡住,而一卡主可能就陷進了迷宮。這時,你需要做的,可能是暫時中斷一下,再從外圍看看它:如API結構、框架的設計圖。

我就說說如何讀Java源碼,以及我曾經的閱讀感悟。

Java源碼初接觸

如果你進行過一年左右的開發,喜歡用eclipse的debug功能。好了,你現在就有閱讀源碼的技術基礎。

我建議從JDK源碼開始讀起,這個直接和eclipse集成,不需要任何配置。

可以從JDK的工具包開始,也就是我們學的《數據結構和算法》Java版,如List接口和ArrayList、LinkedList實現,HashMap和TreeMap等。這些數據結構里也涉及到排序等算法,一舉兩得。

面試時,考官總喜歡問ArrayList和Vector的區別,你花10分鐘讀讀源碼,估計一輩子都忘不了。

然后是core包,也就是String、StringBuffer等。

如果你有一定的Java IO基礎,那么不妨讀讀FileReader等類。我建議大家看看《Java In A Nutshell》,里面有整個Java IO的架構圖。Java IO類庫,如果不理解其各接口和繼承關系,則閱讀始終是一頭霧水。

Java IO 包,我認為是對繼承和接口運用得***雅的案例。如果你將來做架構師,你一定會經常和它打交道,如項目中部署和配置相關的核心類開發。

讀這些源碼時,只需要讀懂一些核心類即可,如和ArrayList類似的二三十個類,對于每一個類,也不一定要每個方法都讀懂。像String有些方法已經到虛擬機層了(native方法),如hashCode方法。

當然,如果有興趣,可以對照看看JRockit的源碼,同一套API,兩種實現,很有意思的。

如果你再想鉆的話,不妨看看針對虛擬機的那套代碼,如System ClassLoader的原理,它不在JDK包里,JDK是基于它的。JDK的源碼Zip包只有10來M,它像是有50來M,Sun公司有下載的,不過很隱秘。我曾經為自己找到、讀過它很興奮了一陣。

Java Web開發源碼

在閱讀Tomcat等源碼前,一定要有一定的積累。我的切實體會,也可以說是比較好的階梯是:

1、寫過一些Servlet和JSP代碼。注意,不是用什么Struts,它是很難接觸到Servlet精髓的。用好Struts只是皮毛。

2、看過《Servlet和JSP核心編程》

3、看過Sun公司的Servlet規范

4、看過http協議的rfc,debug過http的數據包

如果有以上基礎,我也不建議你開始讀Tomcat源碼。我建議你在閱讀Tomcat源碼前,讀過Struts源碼,Struts源碼比 WebWork要簡單得多。這個框架是可以100%讀懂的,至少WebWork我沒有100%讀懂。我曾經因為讀懂了Struts源碼,自己寫過一個 Web框架。

當然,在讀Struts框架前,***看過它的MailReader等demo,非常非常不錯的。

如果你做過一些Struts項目,那么讀它時就更得心應手了。

在讀Struts前,建議看看mvnforum的源碼,它部分實現了Struts的功能,雖然這個BBS做得不敢恭維。

如果你讀過Struts,再開始考慮Tomcat源碼閱讀吧。

不過,我還是不建議直接讀它,先讀讀onJava上的系列文章《How Tomcat Works》吧,它才是Tomcat的最最簡易版。它告訴你HttpServletRequest如何在容器內部實現的,Tomcat如何通過 Socket來接受外面的請求,你的Servlet代碼如何被Tomcat容器調用的(回調)。

學習JSP,一定要研讀容器將JSP編譯后的Servlet源碼。

為什么我總是稱呼Tomcat為容器,而不是服務器?這個疑問留給大家吧。

如果你一定要讀Tomcat,那么就讀Jetty吧。至少它是嵌入式,可以直接在eclispe里面設置斷點debug。雖然Tomcat也有嵌入式版本。

Java數據庫源碼閱讀

我建議,先讀讀Sun的JDBC規范。

我想你一定寫過JDBC的代碼,那么這時候可以開始閱讀源碼了。

如果了解JDBC規范(接口),那么它的實現,JDBC Driver就一定要開始了解,我的建議是,讀讀mysql的jdbc驅動,因為它開源、設計優雅。在讀mysql的JDBC驅動源碼時,建議看看 mysql的內幕,官方正好有本書,《Mysql Internals》,我五年前讀過一部分。比如你可以知道mysql的JDBC驅動,如何通過socket數據包(connect、query),給這 個C++開發的mysql服務器交互的。

通過上面的閱讀,你可以知道,你的業務代碼、JDBC規范、JDBC驅動、以及數據庫,它們是如何一起協作的。

如果你了解這些內幕,那么你再學習Hibernate、iBatis等持久化框架時,就會得心應手的。

讀過JDBC驅動,那么下一步一定要讀讀數據庫了。而正好有一個強大的數據庫是用Java開發的,Hsqldb。它是嵌入式數據庫,比如用在桌面客戶端軟件里,如Mail Client。

Java通訊及客戶端軟件

我強烈推薦即時通訊軟件wildfire和Spark。你可以把wildfire理解成MSN服務器,Spark理解成MSN客戶端。它們是通過XMPP協議通訊的。

我曾經在一個項目中,定制過Spark,當然也包括服務端的一些改動。所以它們的源碼我都讀過。

我之所以推薦它們。是因為:

1、XMPP夠輕量級,好理解

2、學習Socket通訊實現,特別是C/S架構設計

3、模塊化設計。它們都是基于module的,你既可以了解模塊化架構,還可以了解模塊化的技術支撐:Java虛擬機的ClassLoader的應用場景。

4、Event Driven架構。雖然GUI都是Event驅動的,但Spark的設計尤其優雅

這么說吧,讀它們的源碼,你會為做一名程序員而自豪,因為無論是他們的架構設計還是代碼,都太漂亮了。

Java企業級應用

當然了,就是Hibernate、Spring這類框架。

在讀Spring源碼前,一定要先看看Rod Johnson寫的那邊《J2EE Design and Development》,它是Spring的設計思路。注意,不是中文版,中文版完全被糟蹋了。

在讀Hibernate源碼前,一定要讀讀Gavin King寫的那本《Hibernate in Action》,同時,應該再讀讀Martin Fowler寫的《企業應用架構模式》,它專門談到持久化框架的設計思路。當你覺得這兩本書讀透了,再去看它們源碼吧。

而且,在讀源碼前,你會發現它們用到很多第三方Jar包,二三十個,你***把那些Jar包先一個個搞明白。

說到企業應用,一定會涉及到工作流。我當年讀過jBPM的源碼,網上有介紹jBPM內核的文章(銀狐)。我感覺它的內核也就兩千行,不要害怕。我曾經閱讀jBPM源碼的博客。

當然了,讀工作流源碼,前提是一定要對其理論模型有深入的了解,以及寫過一些demo、或做過一些項目。

我上面介紹的這些,是我自己讀過的,也適合一般人閱讀。

我也讀過一些非Java源碼,感覺不錯,也推薦給大家:

dojo源碼 它的架構設計得很優雅,仿Java的import和extends。但實際應用起來一塌糊涂。我們當年基于這個開發了自己的框架,不過我不是主力。

Flex源碼 Flex 08年底剛剛開源后,我就用它做過一個中型項目,應該說是國內的技術先行者。當時市面沒有有深度的書,也沒有開源項目。我純粹是看Flex的Help文檔和源碼,把項目搞定的。兩三年過去了,現在覺得系統設計得蠻優雅的。

好了,先介紹到這里。

上面說到的這些Java源碼,我都是4年前、甚至更早讀過的。技術變化這么快,像互聯網的高速發展,催生很多高性能、分布式數據庫,如hadoop。我一看,發現自己已經落伍了。

這幾年,想必已經出現了很多優秀的框架,大家不妨分享出來。

責任編輯:龐桂玉 來源: java版web項目
相關推薦

2018-07-31 14:49:45

編程語言Java源碼

2017-04-13 19:26:21

2021-03-13 14:08:00

Hadoop 源碼HDFS

2018-11-13 15:50:41

干貨Java源碼

2020-12-07 11:29:24

ReactVueVue3

2013-12-24 10:05:04

memcached

2021-08-02 09:50:47

Vetur源碼SMART

2021-12-20 07:58:59

GitHub源碼代碼

2017-03-16 11:39:33

Openstack源碼姿勢

2019-02-22 10:00:45

Java開發代碼

2018-03-28 16:10:23

閱讀源碼境界

2014-07-29 09:44:58

jQuery源碼

2022-10-08 08:01:17

Spring源碼服務

2012-02-14 14:05:59

JavaSpring

2017-04-05 16:40:45

2019-08-14 16:52:23

閱讀源碼工具JDK

2016-10-11 16:28:11

源代碼

2023-02-06 21:58:23

2012-02-08 17:45:44

傲游3閱讀模式

2012-03-29 14:12:33

網易閱讀
點贊
收藏

51CTO技術棧公眾號

成人免费在线电影网| 日皮视频在线观看| 韩国三级电影一区二区| 欧美激情一区二区三区成人| 中文字幕一区二区人妻电影丶| 超碰一区二区| 亚洲美女屁股眼交3| 鲁片一区二区三区| 国产视频一区二区三| 国产精品试看| 欧美疯狂xxxx大交乱88av| 成年人网站免费看| 欧美日韩国产一区二区在线观看| 欧美日韩国产综合新一区 | 日韩免费观看网站| 草视频在线观看| 日本午夜一区| 亚洲精品国产综合区久久久久久久| 色综合天天色综合| 97蜜桃久久| 亚洲三级免费电影| 欧美成人dvd在线视频| 成人av一区二区三区在线观看| 日韩精品电影在线| 国外成人免费在线播放| 国产免费一区二区三区四区| 国产欧美日韩精品一区二区三区 | 国产精品激情av电影在线观看| 九九热精品在线观看| 91综合久久一区二区| 亚洲精品一区二区三区不| 成年人看片网站| 国产亚洲精品精品国产亚洲综合| 精品人伦一区二区三区蜜桃网站| 男同互操gay射视频在线看| 成a人v在线播放| 国产日韩一级二级三级| 久久精品magnetxturnbtih| 精品免费久久久| 国产精品一区二区无线| 成人午夜一级二级三级| 在线观看色网站| 美腿丝袜亚洲色图| 国产精品美女999| 亚洲成熟少妇视频在线观看| 久久精品综合| 日韩美女中文字幕| 精产国品一区二区| 久久性色av| 国产va免费精品高清在线观看| 日韩成人高清视频| 亚洲伦理一区| 欧美一级高清免费| 天码人妻一区二区三区在线看| 一本色道久久综合亚洲精品高清| 性欧美长视频免费观看不卡| 日本黄色片视频| 日韩视频中文| 欧美亚洲视频一区二区| 国产又黄又爽又色| 日韩黄色小视频| 国产精品美女av| 国产乱人乱偷精品视频| 国产精品1区二区.| 国产精品美女黄网| 五月天丁香视频| 久久久亚洲高清| 亚洲国产精品久久久久婷婷老年| 在线观看a视频| 综合久久久久久| 91精品国产毛片武则天| bl视频在线免费观看| 精品成人在线视频| 成人免费在线观看视频网站| 国产精品久久久久久妇女| 欧美调教femdomvk| 亚洲精品在线网址| 精品国产午夜肉伦伦影院| 亚洲毛片在线观看.| 免费黄在线观看| 中文字幕日韩一区二区不卡| 欧美激情女人20p| 国产无套丰满白嫩对白| 麻豆91小视频| 国产精品成人一区二区三区| 三级av在线播放| 国产精品灌醉下药二区| 国产一区二区三区小说| 免费成人直播| 91精品国产综合久久精品| 催眠调教后宫乱淫校园| 蜜臀av免费一区二区三区| 精品国产一区av| 久久精品国产亚洲AV无码麻豆| 久久国产成人| 91精品免费| 日韩电影免费| 亚洲综合图片区| 三级在线视频观看| 成人直播在线观看| 在线观看国产成人av片| 不卡的免费av| 理论片日本一区| 精品人伦一区二区三区| 免费网站黄在线观看| 精品国产91久久久| 182午夜视频| 亚洲欧美tv| 欧美老肥婆性猛交视频| 黄色污污视频软件| 99视频在线观看一区三区| 亚洲五月六月| 亚洲伦理影院| 亚洲国产精品嫩草影院久久| 免费看特级毛片| 老色鬼久久亚洲一区二区| 国产不卡一区二区三区在线观看| 婷婷成人激情| 色婷婷综合久久久久中文一区二区 | 神马久久午夜| 精品美女被调教视频大全网站| 色屁屁草草影院ccyy.com| 国产欧美短视频| 高清国语自产拍免费一区二区三区| 成年女人的天堂在线| 欧美日韩免费一区| 国产老熟女伦老熟妇露脸| 中文在线播放一区二区| 国产美女扒开尿口久久久| 日本不卡视频一区二区| 亚洲成人动漫一区| 中文字幕制服丝袜| 久久久久久久久久久9不雅视频| 国产精品1区2区在线观看| 久久久久久久影视| 欧美小视频在线| 国产精品一级黄片| 在线日本成人| 国产精品视频福利| 国产区美女在线| 精品久久99ma| 日本五十熟hd丰满| 粉嫩嫩av羞羞动漫久久久| 激情图片qvod| 日本免费精品| 欧美日韩国产成人在线观看| 国产乱淫a∨片免费观看| 亚洲欧洲国产日本综合| 手机av在线免费| 婷婷综合在线| 91精品入口蜜桃| 丁香影院在线| 亚洲国产精品资源| 天天综合网久久综合网| 99久久久久久| 97国产精东麻豆人妻电影 | 久久露脸国语精品国产91| 成人免费不卡视频| 日本日本19xxxⅹhd乱影响| 日韩成人午夜| 国产成人av在线播放| 成人好色电影| 制服丝袜中文字幕一区| 国产精品九九九九九九| 成人午夜激情视频| 色综合av综合无码综合网站| 精品国产123区| 91久久精品国产91久久| 国产经典三级在线| 日韩av网站大全| 日本成人一级片| 亚洲老妇xxxxxx| 中文字幕乱码在线| 日本在线不卡视频| 青草全福视在线| 欧美调教视频| 成人黄色大片在线免费观看| 都市激情久久综合| 亚洲性线免费观看视频成熟| 国产suv一区二区| 精品高清一区二区三区| 欧美成人久久久免费播放| 国产伦理精品不卡| 凹凸国产熟女精品视频| 欧美日韩精品一区二区视频| av成人综合网| 在线成人视屏| 九九久久久久99精品| 青青草在线免费视频| 欧美人狂配大交3d怪物一区| 91看片在线播放| 国产精品毛片久久久久久| 特级特黄刘亦菲aaa级| 日本va欧美va精品| 777777av| 久久久久久久久久久久久久久久久久| 狠狠色狠狠色综合人人| 香蕉久久一区| 青青草原成人在线视频| 国产原创视频在线观看| 亚洲日韩中文字幕在线播放| 亚洲成a人片在线| 欧洲国内综合视频| 日韩毛片在线播放| 成人欧美一区二区三区小说 | 日韩av片专区| 国产精品日本欧美一区二区三区| av不卡在线免费观看| 免费成人av| 九色视频成人porny| 国产免费av国片精品草莓男男 | 91麻豆精品国产综合久久久 | 国产成人jvid在线播放| 丁香影院在线| 免费91在线视频| eeuss影院www在线播放| 亚洲欧美激情另类校园| 丰满熟妇乱又伦| 欧美一级在线观看| 在线播放亚洲精品| 欧美在线观看视频一区二区| 日本中文在线播放| 亚洲二区视频在线| 强行糟蹋人妻hd中文| 国产精品欧美一区喷水| 精品无码人妻一区二区免费蜜桃| av成人免费在线| 中文字幕99页| 成人免费观看视频| 久久久久国产免费| 国产成人av网站| 在线a免费观看| 国产一区二区三区在线观看精品 | 日本电影久久久| 国产精品成人久久久久| 亚州一区二区三区| 国产97免费视| 精品视频一区二区三区四区五区| 欧美在线观看日本一区| 色综合桃花网| 5278欧美一区二区三区| 日本在线影院| 欧美亚洲一区在线| 欧美男体视频| 国产精品久久久久久av福利软件| 日本成人片在线| 国产精品久久久久久久久久东京 | 亚洲一区电影在线观看| 中文字幕亚洲精品在线观看| 三级黄色免费观看| 亚洲欧美日韩人成在线播放| 麻豆亚洲av成人无码久久精品| 夜夜嗨av一区二区三区四季av | 中文字幕一二三四区| 久久网这里都是精品| 蜜桃传媒一区二区亚洲| 国产精品美女久久久久久久网站| 在线观看日本黄色| 亚洲欧美另类在线| 国产一级在线视频| 婷婷成人激情在线网| 久久久久久无码午夜精品直播| 91国产福利在线| 在线观看黄色网| 日韩欧美国产电影| 日本中文字幕一区二区有码在线| 亚洲欧洲日产国产网站| 欧美性天天影视| 九九热这里只有在线精品视| 成人免费网站观看| 国产精品444| 美国十次综合久久| 国产一区二区在线网站| 国产欧美久久一区二区三区| 精品日韩在线播放| 亚洲国产专区校园欧美| 一本久道中文无码字幕av| 精品一区二区影视| 喷水视频在线观看| 中文字幕欧美激情一区| 豆国产97在线 | 亚洲| 一本大道久久a久久综合| 97人妻精品一区二区三区软件| 欧美成人一级视频| 理论在线观看| 欧美大片第1页| 日韩精品99| 成人资源视频网站免费| 免费精品国产| 国产乱子伦精品视频| 久久亚洲视频| 午夜性福利视频| 国产人伦精品一区二区| 国产又黄又爽又无遮挡| 色综合久久综合网97色综合| 精品国产999久久久免费| 国产丝袜一区视频在线观看 | 中文字幕人妻熟女人妻a片| 久久夜色精品一区| 久久成人在线观看| 欧美日韩色一区| 日本v片在线免费观看| 欧美成人网在线| www成人在线视频| 国产精品中出一区二区三区| 99久久久久久中文字幕一区| 日本久久久精品视频| 国产成人免费在线视频| 天天舔天天操天天干| 香蕉成人啪国产精品视频综合网| 91午夜交换视频| 亚洲天堂av女优| 最新中文字幕在线播放| 成人av男人的天堂| 97精品中文字幕| 爱情岛论坛vip永久入口| 99这里只有久久精品视频| 中文字幕在线有码| 欧美日韩一区二区三区免费看 | 精品网站aaa| 久久精品在线免费视频| 久久 天天综合| www久久久久久久| 色噜噜狠狠色综合欧洲selulu| 日本高清视频在线| 欧美激情免费在线| 欧美午夜在线播放| 国产一区一区三区| 激情六月婷婷久久| 在线免费看av网站| 7777精品伊人久久久大香线蕉| 国产爆初菊在线观看免费视频网站 | 蜜桃网站在线观看| 狠狠狠色丁香婷婷综合久久五月| 中文天堂资源在线| 欧美三级三级三级爽爽爽| 青青草在线免费视频| 青草青草久热精品视频在线网站 | 中文字幕视频精品一区二区三区| 美女黄色片网站| 精品一区二区免费视频| www.97视频| 91精品国模一区二区三区| 老司机午夜在线| 亚洲伊人第一页| 国产精品红桃| 国产国语老龄妇女a片| 亚洲高清视频在线| 西西人体44www大胆无码| 欧洲一区二区视频| 欧美理论电影大全| 五月天av在线播放| 亚洲欧美一区二区三区国产精品 | 色综合一区二区日本韩国亚洲| 亚洲午夜精品久久| 国产一区二区精品在线观看| 欧美黑人一级片| 亚洲国产欧美一区二区三区同亚洲| 韩国成人二区| 欧美日韩综合另类| 久草热8精品视频在线观看| 日本中文在线视频| 亚洲大胆人体在线| 自拍偷自拍亚洲精品被多人伦好爽| 亚洲精品一区二区三| 国产乱妇无码大片在线观看| 国产第一页在线播放| 亚洲免费av电影| 国产成人77亚洲精品www| 日本免费黄色小视频| 99精品视频在线免费观看| 尤物视频免费观看| 久久成人18免费网站| 美女主播精品视频一二三四| 国产成人精品视频ⅴa片软件竹菊| 国产精品久久久久永久免费观看| 99精品人妻无码专区在线视频区| 久久久久久久网站| 国产区精品区| 永久av免费在线观看| 亚洲成a人在线观看| 爱爱爱免费视频在线观看| 99久久精品免费看国产四区| 久久综合九色综合欧美狠狠| 污污的视频在线免费观看| 日韩av一区二区在线| 国产资源一区| 成年人看的毛片| 国产精品区一区二区三区| 亚洲国产精品欧美久久| 国产成人久久精品| 国产在线欧美| 日韩一级片在线免费观看| 精品国产99国产精品| 日韩制服一区| 免费观看日韩毛片| 亚洲精品免费视频| yiren22综合网成人| 国产一区二区精品免费| 激情伊人五月天久久综合|