NO IMAGE

一入Java深似海,從此Python如路人。。

java目前就業形勢不錯,需求量也很大,但這並不代表做java就可以衣食無憂,因為在java的世界裡技術更迭的很快,而且在中國各種各樣的培訓機構裡java學員都是批量生產的,那麼競爭壓力也是很大的。

言歸正傳,java的桌面應用並不是很擅長,所以做java最後大致是兩個方向,web企業級開發(JavaWeb J2EE)和手機android開發。

這兩個方向的先決條件是J2SE,不要覺得J2SE學一遍了就可以了就會很簡單,只有到你逐漸學的深入了你才會發現java水深的可怕。

J2EE:

1.HTML CSS DIV,前端會用到,作為研發人員至少應該會簡單寫些頁面出來。

2.JAVASCRIPT,想學就學吧,本人是很害怕這門語言,所以需要用到JS的地方就用Jquery代理了,Jquery是應該好好學學的,很有用的JS框架,看似複雜華麗的效果他都能輕鬆完成。

3.Ajax,前端非同步互動技術,很值得研究。

4.JSP,Servlet,Javabean,發展至今已經不提倡在JSP裡嵌入JAVA程式碼,所以僅僅是作為檢視層使用,嵌入些如JSTL和Struts2標籤庫的標籤成為動態頁面。Servlet是應該重點學習的,包括如過濾器、監聽器等,這些都是當下Struts2或者未來WEB框架的底層基礎和原理。

5.Strut2 Hibernate(or JPA) Spring,當下十分流行的開發框架。其實是很容易上手的,但關鍵是需要懂得原理。

6.有機會學些WebService,由於本人這一塊還是空白就不“妖言惑眾”了。

Android:

4大元件神馬的,個人認為系統的學習效果不是很明顯,專案驅動的方式是掌握一門技術有效的手段,本人的安卓水平還處於嬰幼兒期,所以也就不敢在多說什麼了。

當然了,如果將來想從事IT行業,XML、UML、設計模式等等都是應該掌握的。

語法方面。瞭解所有語法,會簡單使用。

語言暴露成面。開始略深入的瞭解常用的集合原始碼。瞭解原始碼,需要資料結構和部分演算法支援。

搞定所謂的OOP。

框架設計方面。開始看一些框架原始碼,慢慢深入,開始瞭解設計模式技巧,其中設計模式和技巧已經幾乎脫離了某種語言。

自己動手實現一些簡單框架。

開始深入研究Java多執行緒機制 JMM啥的。開始完整的啃AQS系列。

開始理解JVM GC機制 ,研究學習相關原理。需要圖論啥的支援。

下載OpenJDK看JVM原始碼,在C/C 成面理解/分析JVM的實現。

位元組碼,然後用Java和所學的編譯原理,在Jvm上實現一門語言。

然後還有輔助的東西,就不說了,實在是太多了。。。

有人說要明白jvm的執行機制,要去檢視jdk的原始碼。其實我不是很贊同他們的觀點。要作為一名初級的java開發工程師,你需要做的就是完全熟悉jdk的常用api,資料庫的基本操作,基本的效率常識問題等需要掌握,常用的框架需要熟悉,如:spring,struts2,hibernate,springmvc等;這些基本都是成為一個初級開發工程師必須掌握的知識。

當你完成了上面所述,你自然的想去弄清楚jvm的執行機理,來提高自己程式碼的執行效率,去檢視jdk中的原始碼來提高自己的程式設計能力,等等都是水到渠成的事情。沒有編寫幾行程式碼就去研究什麼原始碼啊,機理啊,效率啊,其實是出於下策的。換句話說就是扯蛋。

對於學習有困難不知道如何提升自己可以加扣:578024144進行交流得到幫助,獲取學習資料