-
1 # 玩著學程式設計
-
2 # 匯智動力學院
Java從入門到精通
Java核心技術(卷1):基礎知識
Java程式設計思想
深入理解Java虛擬機器:JVM高階特性與最佳實踐
Effective Java中文版
Java程式設計師修煉之道
Head First Java(中文版)
Java 7入門經典
-
3 # 千鋒頭號粉絲
對於想零基礎學習java的小夥伴,只能說你需要看大量的java書籍和影片外加做一些專案,才能滿足企業對java技術人才的要求。今天推薦的一些java書籍,想學習java的,快快收藏看看吧!
1、《深入理解計算機系統》
從c語言到組合語言到硬體再到作業系統,寫得非常好。是一本能幫助深入理解計算機系統的書。基本上把這本書吃透面試作業系統的大部分問題都不是問題。
2、《演算法導論(第三版)》
被很多acmer coder奉為學演算法的經典之作,但不太適合初學者,因為它這本書很多內容只提供了虛擬碼,而沒有具體實現。但可以從這本書學資料結構和演算法好,因為日後的程式語言對實現而言實際上並沒有特別大的障礙,只是適合與不適合的選擇罷了,而把想法轉換成程式語言才是對演算法知識的考驗。如果不想太過深入的話可以忽略掉第四部分(高階設計和分析技術)第五部分(高階資料結構)和第七部分(演算法問題選編),你會發現書其實比你想象中薄很多噢!
3、《計算機網路:自頂向下方法》
軟體學院的計算機網路教材,非常適合初學者,裡面將計算機網路從頂層到底層逐章分析了一遍,如果能夠結合一些實驗來輔助理解會更好,因為裡面的講解比較抽象。
4、《STL原始碼剖析》
如果你是經常用c++刷演算法題的同學,那麼一定經常用STL的各種集合, vector, set, stack, queue等等。它們的實現原理,在原始碼面前,完全沒有秘密。
5、《圖解HTTP》
日本人著的介紹HTTP協議的書,對理解HTTP協議的一些細節有非常大的幫助,插畫也很多,感覺就像看漫畫一樣,很容易理解的。
6、《TCP/IP詳解卷一》
這本書能把枯燥的知識講得很細緻,強烈推薦這本,看完相應章節後大概能夠明白為什麼TCP/IP要這麼設計了。面試的時候經常問到三次握手和四次揮手,還有各種狀態的轉移, TIME_WAIT的時間為什麼是2*MSL······
7、《UNIX網路程式設計卷一:套接字聯網API(第三版)》
中文版快800頁,不過我只看了一些章節,這本書也是把TCP/IP的細節講得很深很深,此外還有非常重要的基本套接字程式設計,就是寫網路程式的時候那些bind, accept, listen, send, receive函式之類的,內容非常多,但是這些是理解多路複用模型所需要掌握的······select/poll/epoll這些系統呼叫解決了什麼問題?事件機制能不能理解?就看這本書的前六章了。
8、《資料庫管理系統(原理與設計)》
這個也是web開發中離不開的東西,必須劃重點學會的是ER圖/SQL語句/儲存資料(磁碟|檔案|RAID|緩衝池等)/三大正規化/索引以及相應的資料結構/事務相關的所有概念,尤其重點學習SQL 。之後學會使用mysql workbench來進行資料庫建模/逆向工程生成建表語句/根據SQL生成JAVA實體類等就不贅述了,開發過程中百度谷歌一下就知道啦,然後如果習慣在windows下開發的同學推薦利用navicat這個好東西。
-
4 # 千鋒武漢
少年,我看你骨骼精奇,將是未來萬中無一的IT精英,很是適合學Java。維護世界和平就看你的了,這裡有能讓你成為IT精英的辦法!還不來看看!
一、基礎類1、《Thinking in Java》,入門第一位是建立正確的概念。
2、《Core Java》,這本書更貼近實踐,更多API的介紹,同樣,更新也更頻繁。
3、《Java效能權威指南》,Java效能方面的新書,可能也是最好的一本。不僅講述了對什麼進行最佳化,如何最佳化,還闡述了大量然後編寫高效程式碼的最佳實踐。雖然篇幅小一些,但比Oracle官方的那本內容博雜的《Java效能最佳化權威指南》其實更深入。
二、進階類(1)《Java Concurrency in Practic》,併發領域必讀經典。
(2)《Java併發程式設計:設計原則與模式》,同樣是Doug lea的作品。
(3)《Java threads》,入門讀物。
(4)《UML精粹》,UML其實和軟體開發過程沒有什麼必然聯絡,卻是軟體團隊協作溝通,撰寫軟體文件需要的工具。但是UML真正實用的圖不多,看看這本書已經足夠了,完全沒有必要去啃《UML使用者指南》之類的東西。要提醒大家的是,這本書的中譯本翻譯的非常之爛,建議有條件的看英文原版。
(5)《快速軟體開發》,這也是一本名著。可以這樣說,有本書在手,就有了一個專案管理的高階參謀給你出謀劃策,再也不必擔心自己不能勝任的問題了。這本書不是講管理的理論的,在實際的專案管理中,講這些理論是不解決問題的,這本書有點類似於“軟體專案點子大全”之類的東西,列舉了種種軟體專案當中面臨的各種問題,以及應該如何解決問題的點子,只需要稍加變通,找方抓藥就行了。
三、方法論1、《敏捷軟體開發》
2、《測試驅動開發》,你不一定要TDD,但是你一定要學會做單元測試。
3、《Agile Java》,也可以作為Java入門讀物。
4、《快速軟體開發》
5、《面向物件分析與設計》,OO設計必讀。
6、《Unix程式設計藝術》,開啟你的眼界。
以上就是我推薦的從Java小白到架構師必讀的書籍。希望以上的分享能幫助到初學Java的小夥伴們!
回覆列表
學習Java的時候,基本上都是看的影片教程來學習的,先看影片,跟著操作,在學習的過程中,做一遍筆記,印象會更加的深刻。把那些重點,難點都記錄下來,寫成技術部落格,個人覺得這樣的學習方式會更好一些。
先規劃相應的學習路線,根據企業的需求,招聘網站上相關的崗位的任職要求,羅列出所需要的技術,然後在找相應的影片教程來進行學習,特別是對於剛開始接觸專案,看影片比看書更加高效,從功能的分析,到專案的搭建,以及最後的完成,都是可以很清晰,很直觀的看到的,包括其中的除錯過程,都是動態進行的。
最開始學習Java看的是“如鵬網”的《這樣學Java不枯燥》影片教程,挺不錯的,沒想到Java還可以這麼學,有詳細的學習路線。
Java基礎,免安裝jdk,無需配置環境變數,透過開發超級瑪麗,飛機大戰,吃金幣,連連看,湯姆貓,電影的彈幕動畫等來講解Java的基礎知識點,學起來不枯燥。
有網路的地方就可以學習,有新的課程更新了,也是可以繼續來學習的,Java提高技術,內容包含:分散式、設計模式、前端技術、網路支付、全文搜尋引擎、Docker、WebService等。
2、NoSQL
3、設計模式
4、分散式技術
5、綜合專案