-
1 # 秋天的銀杏樹
-
2 # 一生悟道之路
自學java,如果對於一個沒有一點程式設計功底的人來說,可能有點難,你或許可以找一個人一開始來指導你,一開始的時候,不要學偏了,不然到最後你會發現你自己學的可能用不到多少,我現在馬上是一名大三的學生,自己學的還不錯,也有在培訓班上,如果可以,你可以私我,我可以給你說一些學習java的方法。
-
3 # mikechen的網際網路架構
1 剛畢業工作1-2年java程式設計師
在這一年裡,你至少需要看完《Java程式設計思想》這本書。如果部分章節,掌握不好的情況,就反覆學習檢視,直到掌握好為止。
《Thinking in Java》java系列經典開啟書。Bruce Eckel在書中不僅僅講解了Java的語法,更重要的是將OOP程式設計思想循序漸進、淺顯易懂地表達出來。從這點上來說,中文版翻譯成Java程式設計思想非常恰當
JAVA核心技術(卷1):基礎知識,剛入行業的java程式設計師,很多都是以本書開啟自己的生涯。與《Java程式設計思想》齊名的Java圖書泰山北斗,前者內容豐富,在講述Java語言的同時把Java程式設計思想也娓娓道來,讓人如沐春風;後者偏重於講解Java技術,舉例說明了大量API的使用。
此書分為了基礎版和高階特性版,你也可以讀java程式設計思想,也有涉及高階特性部分。這本書在新手入門上比《Thinking in Java》稍勝一籌,但在內容深廣度、價效比方面則跟《Thinking in Java》不可同日而語,建議選讀。
這個階段還需要掌握web開發基礎:html css,js等web開發基礎,以及java web開發框架 struts2 springmv mybatis等框架,熟練使用mysql以及相關工具mysql-front等,以及常用的開發工具:eclipse等。
2 工作3年左右的java高階程式設計師這部分時間段的同學,已經對Java有了一個更加深入的瞭解。但是對於面向物件的體會可能還不夠深刻,程式設計的時候還停留在完成功能的層次,很少會去考慮設計的問題。於是這個時候,設計模式就來了。這個階段,你的核心任務就是提高你的程式碼能力,注重程式碼的質量。
首先,從設計模式開始瞭解程式碼這門藝術。
《Head First設計模式》(中文版)共有14章,每章都介紹了幾個設計模式,完整地涵蓋了四人組版本全部23個設計模式。Strategy、Observer、Decorator、Abstract Factory、Factory Method、Singleton,Command、Adapter、Facade、TemplateMethod等,
這本書,通俗易通,寫得很有趣,圖文並茂,設計模式入門。
號稱設計模式領域的聖經,軟體工程和軟體架構必看的書籍。內功修養。這本書結合設計實作例從面向物件的設計中精選出23個設計模式,總結了面向物件設計中最有價值的經驗,並且用簡潔可複用的形式表達出來。
四位作者均是國際公認的面向物件軟體領域的專家。Head First設計模式擁有風趣的語言和詼諧的例子,但它既缺乏實際的工程範例,也沒有給出設計模式的應用/適用場景。
我個人建議是在讀完Head First這本書之後立即閱讀“四人幫”的這本設計模式。
本書介紹了在Java程式設計中78條極具實用價值的經驗規則,這些經驗規則涵蓋了大多數開發人員每天所面臨的問題的解決方案。透過對Java平臺設計專家所使用的技術的全面描述,揭示了應該做什麼,不應該做什麼才能產生清晰、健壯和高效的程式碼。
可以適當的接觸敏捷開發,在本書是全球的軟體開發專家和軟體工程大師Robert C.Martin將向您展示如何解決軟體開發人員、專案經理及軟體專案領導們所面臨的最棘手的問題。這本綜合性、實用性的敏捷開發和極限程式設計方面的指南,是由敏捷開發的創始人之一所撰寫的。
Martin Fowler和《重構:改善既有程式碼的設計》另幾位作者清楚揭示了重構過程,他們為面向物件軟體開發所做的貢獻,難以衡量。
任何產品程式碼都不是一蹴而就,而是在反覆不斷的修改中進化而來。
重構正是這樣一本介紹如何改進程式碼的書籍——如何在保持程式碼行為的基礎上,提升程式碼的質量(這也是重構的定義)。
3 工作3年以上準備往架構師方向發展這個階段,我用一句來總結。你需要做的是深入瞭解java相關的技術原理,Java底層和Java類庫,以及SSM、SSH等常用框架原始碼,JVM、分散式快取、儲存、Linux核心等的核心原理。
Java程式設計師必讀經典,深入理解Java虛擬機器。
《深入理解Java虛擬機器:JVM高階特性與最佳實踐(第2版)》共分為五大部分,圍繞記憶體管理、執行子系統、程式編譯與最佳化、高效併發等核心主題對JVM進行了全面而深入的分析,深刻揭示了JVM的工作原理。
確為提升Java功力之良藥。本書使自己對於虛擬機器的執行機理與底層知識真正來了一次近距離接觸,許多知識不再只是符號或文字的堆疊,而是一種真正地理解。華人很難寫出這麼棒的書,本書值得推薦。
其次,在過去的工作當中,你肯定或多或少接觸過併發。這個時候,你應該去更加深入的瞭解併發相關的知識。推薦《Java併發程式設計實戰》這本書。
本書圍繞大型網站和支撐大型網站架構的 Java 中介軟體的實踐展開介紹。從分散式系統的知識切入,讓讀者對分散式系統有基本的瞭解;然後介紹大型網站隨著資料量、訪問量增長而發生的架構變遷;接著講述構建 Java 中介軟體的相關知識;之後的幾章都是根據筆者的經驗來介紹支撐大型網站架構的 Java 中介軟體系統的設計和實踐。
如果對淘寶的Java技術感興趣,這本書就是最佳的乾貨選擇。作者是淘寶Java中介軟體團隊的創始人,如果你想全面瞭解中介軟體,推薦此書。
本書是作者在多年的工作中積累的第一手Spring框架使用經驗的總結,深入剖析了Spring框架各個模組的功能、出現的背景、設計理念和設計原理,揭開了Spring框架的神秘面紗,使你“知其然,更知其所以然”。
Spring裡實踐了大量Java語言優秀的理念,此書透過講解Spring原理,通俗易懂地向我們展示了這些理念。Spring對於java框架 系列的重要性之高,三大框架ssh裡面寫的最好的一本書,非常推薦這本書。
《大型網站技術架構:核心原理與案例分析》透過梳理大型網站技術發展歷程,剖析大型網站技術架構模式,深入講述大型網際網路架構設計的核心原理,並透過一組典型網站技術架構設計案例,為讀者呈現一幅包括技術選型、架構設計、效能最佳化、Web 安全、系統釋出、運維監控等在內的大型網站開發全景檢視。
大型網站架構設計的清單,比較全面、系統、清晰,雖然講解得不是特別深入,但卻比較樸實易懂,架構入門系列文章。
涵蓋了Web站點效能最佳化的所有內容,包括資料的網路傳輸、伺服器併發處理能力、動態網頁快取、動態網頁靜態化、應用層資料快取、分散式快取、Web伺服器快取、反向代理快取、指令碼解釋速度、頁面元件分離、瀏覽器本地快取、瀏覽器併發請求、檔案的分發、資料庫I/O最佳化、資料庫訪問、資料庫分散式設計、負載均衡、分散式檔案系統、效能監控等。
高效能入門的好書,我個人也是從這本開啟高效能之旅。
-
4 # 風吹走了烏雲
如果你是非計算機類專業的,或者是計算機專業,但在學校啥也沒學到的人,建議初步先報個培訓班去入門,因為這樣會極大的減少你學習的時間,因為要入門程式設計這行業還是挺難得,當然如果你是基於說能找到一份工作就行了,那就另說了。
培訓完再去找一個起點稍微高一點的工作,在工作咯中是必須看書去充實自己的,大概推薦幾類:spring框架使用,mytatis框架 hibernate使用等。併發程式設計類。spring框架原始碼類。資料庫最佳化類。jvm最佳化類。
-
5 # java高階
學習Java,書籍是必不可少的學習工具之一,尤其是對於自學者而言。廢話不多說,下邊就給大家推薦一些Java進階的好書。
第一部分:Java語言篇
1.《Java程式設計規範》 適合物件:初級、中級
介紹:這本書的作者是被譽為Java之父的James Gosling,入門者推薦閱讀,對基礎的講解很不錯。
2.《Java程式設計思想》 適合物件:初級、中級
介紹:豆瓣給出了9.1的評分,全球程式設計師廣泛讚譽。有人說這本書不適合初學者,不過小編認為作者並沒有對讀者已有的知識經驗有過多要求,只是要求讀者需要知道基本的程式語言。作者以通俗易懂及小而直接的示例解釋了一個個晦澀抽象的概念,需要花時間細細研讀。
3.《Java核心技術:卷I基礎知識》 適合物件:初級、中級
介紹:官方機構圖書,備一本總是沒錯的。這本書比較全面也通俗易懂。可以當字典的功能來用,學習入門必備。
4.《Java資料結構和演算法》 適合物件:初級、中級、高階
介紹:這本書目前基本斷貨,足以說明搶手程度。作者主要使用Java語言描述了我們常用的資料結構,值得一看。
5.《Java與模式》 適合物件:中級、高階
介紹:難得一見的華人寫的Java好書。主要講解設計原則以及最為常見的設計模式的實用教材。這本書出現的比較早,是初級到中高階必讀的圖書之一。
6.《SCJP學習指南》 適合物件:初級、中級
介紹:官方考試的必備圖書,對檢驗自己的Java學習情況很有幫助。這本書特別適合學生閱讀,這本書理解透了,找工作面試Java題目不會有任何問題。一些工作多年的工程師都會在裡邊遇到一些不會做的題目。
第二部分:中級進階篇
1.《重構:改善既有程式碼的設計》 適合物件:中級、高階
介紹:清晰揭示了重構的過程,解釋了重構的原理和最佳實踐方式,並給出了何時以及何地應該開始挖掘程式碼以及改善。大師的傑作,讓你明白軟體是一步步改進的,不是一蹴而就的。
2.《XML入門經典》 適合物件:初級、中級、高階
介紹:很多人覺得沒必要買XML書籍,不過我還是覺得推薦一本給你作為工具書,而且看本書可以使得你對XML方方面面有個瞭解。裡面不少東西還是用到的。
3.《jQuery基礎教程》 適合物件:初級、中級、高階
介紹:從這個開始學習jQuery才是根本,不然以後遇到的很多奇怪問題不知所以然。jQuery個人感覺已經成為目前的javascript標準庫了,外掛無數,大大簡化了前端工作。
4.《JavaScript權威指南》 適合物件:初級、中級、高階
介紹:一本從全新視角和層次來介紹JavaScript的參考書,填補了市場的空白。是學習js的必備參考工具書之一。
5.《程式碼整潔之道》 適合物件:中級、高階
介紹:講述了一系列行之有效的整潔程式碼操作實踐。軟體工程的理想編碼是無數人編出來的程式碼像一個人寫的,這本書當作規範就不錯。
第三部分:高階篇
1.《Enterprise JavaBeans 3.0中文版》適合物件:中級,高階
介紹:EJB技術在大型系統中使用,主要有銀行等金融機構。是開發分散式程式的選項之一,不過我不喜歡,其實銀行使用的也不怎麼的。結合JavaEE容器使用,開源的有JBoss,商用的有IBM和Oracle支援。
2.《Java併發程式設計實踐》 適合物件:中級、高階
介紹:這本書名為《Java併發程式設計實踐》有些抹殺了它的價值,其中並非只講述了Java的多執行緒設施,對一般的併發程式設計的rationale也有相當透徹的闡述。市面上併發程式設計的書比較少,這一本推薦閱讀。
3.《Hadoop權威指南》 適合物件:中級、高階
介紹:雲計算必備圖書。作為分散式計算的工具,Hadoop目前可以說是市場上唯一成熟的產品,而且大家也都向其看齊。而起雲計算炙手可熱,你搞明白這本書就大概明白了什麼是雲以及怎麼做雲。
4.《Java訊息服務》 適合物件:中級、高階
介紹:深入淺出地講解了JMS1.1規範的底層技術、Java類和介面、程式設計模型及其不同實現等Java訊息服務(JMS)和訊息傳送機制關鍵技術。講解簡單明瞭,偏向於如何使用以及設計的一些原則。排版相當不錯。
真正想提升自己,我感覺最主要的是先把 JVM、併發、網路這三塊知識點學會、學通,這三塊是基礎,後面所有的框架、中介軟體等相關的都是基於這三塊知識點之上的。學完這三塊知識點,可以快速的掌握其它的知識,新框架等。
繼續給大家分享,進階高階或架構師必看的書籍。
1. HeadFirst 設計模式
如果對設計模式不瞭解,可以入手這本書,或圖解設計模式。
我也買了本 《Java 與 模式》 600多頁。看了兩章就不看了,枯燥無味,看完就忘。我只是完整的看完過《HeadFirst設計模式》,看完其實印象也不深,只知道有這些設計模式,大概幹什麼的瞭解些。我真正理解設計模式還都是閱讀原始碼的時候學習的。如果想真正的理解設計模式,還是多讀一些原始碼吧。歡迎大家加入Java架構交流:579581654
2. spring 原始碼深度解析
這本書主要分析了 spring 載入配置檔案,解析標籤,生成Bean。IOC,AOP 原始碼講解 ,整合JDBC,SpringMVC 原始碼分析等。
這本書看的有些枯燥,必須下載原始碼結合這書上一塊分析,光看書效果不大,沒有閱讀原始碼的同學,謹慎入手。
3.重構 改善既有程式碼的設計
大家都推薦這本書,我這也推薦下吧,想讓你的程式碼寫的更好,邏輯更清晰,易讀已擴充套件,就入手一本吧。其實這本書我都沒整體的通讀一遍。
4.Effective Java
這本書沒得說,經典讀物,必看。
5.大型網站技術架構
主要從大型網站架構的特點,架構目標(高效能,高可用,可伸縮等)基本理論講起。看起來輕鬆愉快,抽時間準備再看一遍。強烈建議大家入手一本。
6.深入分析java web技術內幕
image.png
web開發進階必看。當時我閱讀tomcat原始碼的時候,就是從這本書的tomcat拿章開始的。
7.啊哈演算法
這本書朋友給我推薦的,寫到確實有意思,把演算法寫的簡單易懂。
8.從Paxos到Zookeeper分散式一致性原理與實踐
看這本書是我對分散式事務 兩階段提交(2pc)、三階段提交(3pc)、有了更深的認識。CAP理論 BASE理論。對分散式一致性有了深刻的認識。看到zookeeper的時候有點蒙,表示看不懂。最近看完《架構探險:從零開始寫分散式服務框架》後對zookeeper有了更深的認識。有時間在重讀下Zookeeper相關的內容。
9.這就是搜尋引擎
同事推薦的,看完這本書後對倒排索引有了更深刻的認識。自己也可以簡單的實現一個很簡單的搜尋引擎。對爬蟲相關的知識也介紹了下。基本都是理論級別的。
10. 大型網站系統與Java中介軟體實踐
11.頸椎病康復手冊....
-
6 # 千鋒頭號粉絲
Java自學書籍:
1、《Head First Java, 2nd Edition(中文版)》
這本書不僅內容豐富、有趣且通俗易懂,並且涵蓋了所有 Java 相關的基礎知識。如果你是 Java 初學者,這本書正適合你。
2、《Java 核心技術(卷1、2)》
寫作風格相比 Head First 趣味性來說更顯傳統,所涵蓋的內容包括 Java 基礎知識及高階應用,是對於入門來說的另一種選擇。
3、《Java 程式設計思想(第4版)》
必讀之作,不僅涵蓋所有 Java 基礎,對於程式設計思想層面的提升也有很好的幫助。
4、《Head First 設計模式》
延續 Head First 一貫生動趣味的寫作風格,介紹 23 個設計模式,推薦作為設計模式入門級書。
5、《Effective Java 中文版(第2版)》
Java 程式設計中78條極具實用價值的經驗規則,這些經驗規則涵蓋了大多數開發人員每天所面臨的問題的解決方案。
6、《重構:改善既有程式碼的設計》
出自於 Martin Fowler 的大作,寫出優秀程式碼的必經之路。
7、《Java 虛擬機器規範(Java SE 7版)》
作者是 Java 程式語言的主要貢獻者之一。如果你想系統、全面、深入的學習 JVM,絕對不能錯過這本書。
Java影片教程:
http://pan.baidu.com/s/1c26JSDq
-
7 # 千鋒青島
隨著Java語言的應用變得越來越廣泛,市場上對於Java開發人才的需求量也越來越大,行業發展前景也十分不錯,因此有不少小夥伴開始想要透過學習來從事這個行業了。透過書籍汲取知識,相信是不少人的選擇,但是市面上的書籍那麼多,有哪些書籍能夠幫助Java初學者快速進階呢?
一名Java開發工程師不僅要對Java語言及特性有深層次的理解,而且需要掌握與Java相關的框架、生態及後端開發知識。本文涉及多種後端開發需要掌握的技能,對提高開發能力非常有幫助。
1、《Java Web開發實戰》
本書以提升讀者實戰技能作為編寫目標,使用通俗易懂的語言、豐富多樣的例項,對Java Web開發涉及的核心技術進行了詳細的講解。涵蓋了JDBC基礎、JDBC進階、DBUtils工具包、XML、Web開發前奏、HTTP協議、Servlet詳解、會話跟蹤、JSP詳解、EL表示式、JSTL標籤庫、Filter詳解、Listener詳解、檔案上傳和下載、MVC涉及模式、程式日誌工具和人力資源管理系統等內容。
書中更是有透過人力資源管理系統這個專案案例,將理論知識系統地串聯起來,並將知識點在實戰中的應用點出來,讓讀者真正理解Java Web技術的精髓並做到融會貫通、學以致用。
對於選擇Java Web開發這條路線的人們來說,這本書的實用性還是不錯的。
2、《Java工程師修煉之道》
Java 開發一直是當前網際網路領域火熱的開發技能之一,Java 工程師也一直是需求量非常大的開發職位。
本書主要針對一名合格的Java 工程師的必備技能做了大綱性的總結和闡述。內容包括了工程化、常用開發框架、資料儲存、資料傳輸、Java 程式設計高階知識、效能最佳化、安全技術等內容,基本涵蓋了Java 工程師需要掌握的絕大部分技能點。
本書可以看作一本Java 工程師的入職指南,也可以看作一本串聯Java 後端技能點的參考手冊。透過精心編排的內容,剛入門的Java 工程師能夠體系化地學習相關開發技能,有經驗的Java 工程師能夠查漏補缺,鞏固自己的相關開發技能,進一步完善自身的Java 技術體系。
3、《揭秘Java虛擬機器:JVM設計原理與實現》
Java是一門非常流行的程式語言,但是,Java程式到底是如何執行的?如何寫出更高效的Java程式碼……?這些令人困擾的問題,都可以從本書中找到答案。
本書從原始碼角度解讀HotSpot的內部實現機制,主要包含三大部分——JVM資料結構設計與實現、執行引擎機制及記憶體分配模型。經過直接對原始碼的分析,從根本上梳理和澄清Java領域中的關鍵概念和機制。
4、《輕量級Java EE企業應用實戰(第5版)》
本書介紹了Java EE領域的四個開源框架和技術:Struts 2、Spring、Hibernate和JPA。重點介紹瞭如何整合Struts 2.5+Spring 5.0+Hibernate 5.2進行Java EE開發。
本書主要包括三部分。一部分介紹了Java EE開發的基礎知識,以及如何搭建開發環境。第二部分詳細講解了Struts 2.5、Spring 5.0、Hibernate 5.2、JPA的用法。第三部分示範開發了一個包含7個表,表之間具有複雜的關聯對映、繼承對映等關係,且業務也相對複雜的工作流案例,希望讓讀者理論聯絡實際,將三個框架真正運用到實際開發中。
5、《Spring+MyBatis企業應用實戰(第2版)》
本書介紹了Java EE(現已改名為Jakarta EE)領域的兩個開源框架:Spring的MVC和MyBatis。
本書重點介紹如何整合Spring MVC 5+MyBatis 3.4.5進行Java EE開發。本書操作步驟詳細,程式設計思路清晰,語言平實易懂。只要讀者認真閱讀本書,並掌握書中知識,那麼就完全可以勝任企業中Spring MVC+MyBatis專案開發的要求。
6、《億級流量網站架構核心技術:跟開濤學搭建高可用高併發系統》
本書總結並梳理了億級流量網站高可用和高併發原則,透過例項詳細介紹瞭如何落地這些原則。本書分為四部分:概述、高可用原則、高併發原則、案例實戰。多方面詳細介紹了億級流量網站的架構核心技術,讓讀者看後能迅速運用到實踐專案中。
既然選擇了IT行業,那麼不斷的學習和進步才是自己能夠在行業中一直如魚得水的秘訣。
我今年23,自考本科學歷,在工地呆了兩年感覺沒啥前途累死累活工資得不到保障,我在家自學java基礎要學完了感覺還迷茫,我也喜歡網際網路,我從不打遊戲,我希望學完了準備找個網際網路公司工作,不去工地了
回覆列表
其實有很多人有你這種情況,網際網路行業現在是如火如荼,很多學校網際網路專業都是熱門專業,由於網路上傳播的網際網路行業薪資整體較高,相信這是大家想進入網際網路行業最大的吸引點。
對於一個不是專業對口科班的學生,想要進入網際網路這個行業,還是得摸爬滾打一段時間。其實不管是哪一門程式語言,首先第一得是基礎要打牢,不管是在學校學習還是自學。學習一門技術,首先得搞清楚這門技術的整體結構,先了解JAVA這門技術的基礎知識都有哪些。知道自己將要學習的知識有哪些。搞清楚這一點,然後每天去針對不同的基礎知識去消化,相信過不了幾個月,就能對基礎知識有一個較為全面的掌握,而不是今天看這裡,明天看那裡,都是些零零碎碎的東西,無法全面的學習,自然就感覺時間過去了,東西沒掌握。
學習程式語言最最最重要的一點:注意我說了三個最,那就是動手。切記不要只看不做,不要只是在看別人做,不要只看被人寫的程式碼。自己能動手寫出來,那才是你的成果,別人的永遠是別人的。
我在網上找了很久,找了幾張java語言學習的內容,感覺比較詳細,如果自學,可以按照這個語言基礎結構整體學習,
根據右邊描述的java基礎的內容,制定計劃依次學習掌握基礎知識,相信你對java語言有了一個整體的瞭解。搞清楚了基礎,可以去做一些框架的東西,spring,hibernate,Struts2等等,現在流行的框架主要有springMVC,springBoot,mybatis等等,對框架有了一定的瞭解,你可以去找工作了,但只能是以應屆畢業生的水平去找工作,經過一兩年的磨礪,相信根據自己的努力,會離當初自己的期望不會太遠。
我還找了一張基礎詳細介紹圖,可以簡單看看,
推薦一個開源組織的技術網站,很專業,也很完整詳細的技術介紹網站,搜尋菜鳥教程,據說是根據w3c網站翻譯過來的,個人感覺很不錯,適合新手學習。
對於java學習書籍推薦,其實學習基礎知識我覺得沒必要專門去買一本書,市面上有很多什麼30天入門之類的書籍,太多了,裡邊內容基本差不多,技術類不是分享觀後感,每個人寫出的東西不一樣,技術是死的,網際網路這麼發達的今天,在網上完全可以找到自己想要的內容。何必還抱著一本書,而且還不能複製貼上內容。但是當學到更深入的內容是,可以買本銷售評價較好的技術書籍,畢竟有些複雜的東西,網站上很少找到有人免費分享心得,看網上銷售記錄最多的,基本就是最好的,基礎的東西不值錢,所以網上到處都可以找到。