1.首先找壹本簡單的教材,先對java有個基本的認識(大概看那麽半個月就差不多了,隨便下載壹本入門的書就行了)
2.然後推薦妳看<<java核心技術>>,分為上下兩卷,已經是第八版了,大概有壹千六七百頁;當 妳看完後,基本的java知識已經掌握了(記住,壹定要多練習啊)(但是要弄懂,呵呵,至少看個三四遍吧,這兩本書只要能搞懂70%就很不錯了)
3.這個時候可以看看<<thinking in java>>中文名"java編程思想",這本書寫的比較難,如果看完了,而且懂了,那麽證明java水平到達了壹個中等的層次;(去參加面試的時候問的那些java知識完全可以應付過來了)(或者可以先看下面的書,邊看thinking in java這本書,這樣也是可以的,而且學習的效率應該會高些)
4.然後java就會分方向,j2me(手機編程),已經過時了;j2ee方向(Web編程),先學html,javaScript,css(這些書多得數不清),然後就學servlet、jsp還有tomcat服務器,《jsp應用開發詳解》(入門) 《Servlet與JSP核心編程》(核心) 《Tomcat與Java Web開發技術詳解》這幾本書還不錯,然後就可以學習SSH
5.學習數據庫理論、JDBC(最好能夠學好oracle),學習struts的時候建議從struts1開始學起《精通Struts基於MVC的Java Web設計與開發》,然後就可以學習struts2《Struts2權威指南》,接下來學習Hibernate《精通Hibernate:Java對象持久化技術詳解》,最後學習Spring《spring2.0技術手冊》和EJB《Enterprise JavaBeans, 2nd Edition》(提示:只要java基礎學得好,這些東西都會學得很快)
6.這個時候就要把註意力放在設計模式(做應用特別重要),數據結構和計算機算法上面來了,設計模式可以先看<<深入淺出設計模式>> 然後再看<<java與模式>>, 數據結構可以看清華大學嚴慰敏老師寫的那本教材;計算機算法要了解基本的排序,如果時間充裕可以看那個<<算法導論>。 (設計模式,數據結構和算法才是真正的精髓,光看懂還不行的,壹定要多練習多思考) ,理論上來說,5萬行以上的代碼量可以看懂設計模式,20萬行以上可以運用設計模式 (第壹個重點)
7.等掌握前面的這些知識之後,推薦看<<effective java>>,這本書是目前java領域公認的高級書籍。在項目中肯定會遇到壹些前端的知識,那麽得精通javascript、Ajax,<<JavaScript權威指南>>(入門), <<JavaScript高級程序設計>>(進階),這兩本書弄懂了,那麽學習jquery和extjs都會很快的<<深入淺出ExtJS>>和《鋒利的jQuery》。
8.學習SSH源碼,裏面的思想太多太有用了。不要心急,不要圖快,所有的書要壹本本的慢慢看,多看幾遍(壹本書看上個四五遍,就可以成高手,呵呵)。
9.java基礎(j2se)的重點有:繼承、多態、流、線程、網絡編程、反射、集合、數據庫連接、泛型、JNI技術、分布式技術還有解析xml也是很重要的,如果妳想學android手機編程,那麽SWING和AWT要熟悉壹下。《Google+Android開發入門與實戰》(入門) 《Google Android SDK開發範例大全》(深入)(建議把android當作業余愛好,把web編程當作主攻方向,因為j2ee包含了大量框架知識),書很多,可以自己去搜。多想 多看 多練才是王道,不要相信什麽培訓機構,這些都沒啥用,真正學好只能靠自己。
10.面向對象思想+java基礎(j2se)+數據結構+設計模式+計算機算法為核心,本科生什麽都可以不學好,唯獨這幾科壹定要學好,切記切記!(第二個重點)
11.學完以上的知識,可以做壹個ERP系統了,不過這些都還只停留在Web application階段,這裏也是本科生與研究生的分水嶺!
12.互聯網的制高點是Web Service,前端是J2EE+移動終端(Android、IOS、黑梅),後端是linux操作系統。
12.那麽如何將大量的服務器集成呢?如何把壹個工作分為多個任務分發給多個服務器來處理呢?如何將解決多個服務器之間通信的問題呢?如何解決服務器之間高並發的問題呢?
如何建立壹個Web Service提供接口讓外界調用呢?(這些都是研究生學習的內容)/education/java/j-cxf/section2.html
13.深入理解計算機網絡、操作系統、分布式系統的原理知識。學習RMI、JMS、《JAVA消息服務》,《JAVA並發編程實踐》對這些問題都有壹個初步的介紹與實現
14.學習linux操作系統《鳥哥的私房菜》
15.學習處理服務器端的海量數據,雲計算等知識 《Hadoop權威指南》
16.集成系統的時候,有可能上遊企業用的是其他的語言,那麽妳還得去學另外的語言。
17.掌握壹門腳本語言,比如ruby
18.軟件工程的名言 “什麽是專業?專業就是妳比別人花更多的時間!”(多花時間) “最好的最厲害的招式就是沒有招式!”(設計模式的最高境界)