關(guān)于java學(xué)習(xí)路線,個人建議如下:
1. 語言語法學(xué)習(xí)
2. java數(shù)據(jù)結(jié)構(gòu)及算法错英。了解并掌握各種排序算法入撒,理解數(shù)組,字符串椭岩,單向鏈表茅逮,雙向鏈表璃赡,二叉樹,紅黑樹献雅,哈希表碉考,通用樹結(jié)構(gòu)以及圖等經(jīng)典的數(shù)據(jù)結(jié)構(gòu)及建立在其上的算法
3. 不管如何,總是要研究一下jdk中的一些基礎(chǔ)庫或類挺身。特別是java集合類侯谁,一定要深刻的理解原理和使用方法,這些都是最基礎(chǔ)但是最核心的章钾,屬于內(nèi)功墙贱。
4. 關(guān)于面相對象和設(shè)計模式,是任何面相對象語言都要不斷學(xué)習(xí)的內(nèi)容贱傀。而java可以說是面相對象語言中的典范惨撇,java的類庫大量使用了設(shè)計模式,從很多庫的類命名上就可以知道使用了何種模式府寒。面相對象的分析和設(shè)計模式的應(yīng)用是一個長期的過程魁衙,是和你的經(jīng)驗,時間株搔,感悟成正比的剖淀,其實最后你會發(fā)現(xiàn),這就是編程思想邪狞,最終是語言不重要,重要的是思想茅撞,換一門語言帆卓,依舊可以順利使用。 像設(shè)計模式等最好的學(xué)習(xí)是研究java經(jīng)典開源框架米丘。
上面都是基礎(chǔ)和綜合性的知識 下面開始是專業(yè)知識剑令。
5. 大范圍可以分類為客戶端,服務(wù)器端拄查。像題主所提到的swing框架屬于客戶端ui框架吁津。其實java缺乏一個高效的,跨平臺的ui框架堕扶。目前pc端跨平臺框架除了qt(c++庫 也不完美 和移動端漂亮的效果比起來)外碍脏,其他框架都不太好。除非有本事你自己寫個全部自繪的ui引擎和控件庫稍算。所以目前我個人更看好的是h5做pc客戶端ui框架典尾。至于移動端可選就多了,h5,原生等糊探。說這么多钾埂,就是想說java除了Android原生ui外河闰,其他平臺開發(fā)客戶端ui系統(tǒng)個人感覺不太合適。
6. java最好的用途是服務(wù)器端開發(fā)褥紫。目前所有大公司的后臺服務(wù)器姜性,很大部分是java開發(fā)的。java有非常多久經(jīng)考驗的服務(wù)端框架髓考,已經(jīng)建立起一整套服務(wù)端生態(tài)系統(tǒng)部念。所以如果要進(jìn)一步,我個人建議還是走服務(wù)端路線绳军。至于服務(wù)端框架印机,可以自行查閱一下。
最后门驾,我想說的是:如果你是學(xué)生射赛,我建議你將基礎(chǔ)知識學(xué)好,至于一些應(yīng)用框架奶是,在工作中學(xué)習(xí)楣责。只要基礎(chǔ)好,調(diào)試能力過關(guān)聂沙,良好的百度谷歌能力秆麸,學(xué)框架還是比較容易的事。
2010年寫的頁游服務(wù)器及汉,在開心和人人網(wǎng)上架
操作系統(tǒng) :? ? ? ? ? ? ? centOS
http服務(wù)器 :? ? ? ? ? ? blazeDS
程序語言 :? ? ? ? ? ? ? ? java
數(shù)據(jù)庫服務(wù)器 :? ? ? ? mysql
內(nèi)存服務(wù)器 :? ? ? ? memcached
Tcp/IP庫 :? ? ? ? ? ? mina庫