我決定寫一本Java實用技術,特點實用!實用!還是實用!
- 小知識,大挑戰!本文正在參與“程式設計師必備小知識”創作活動。
- 本文已參與「掘力星計劃」,贏取創作大禮包,挑戰創作激勵金。
引言:
最近掘金舉辦了一個活動叫“程式設計師必備小知識”,讓我恍悟到工作中真的有很多必備知識,但是很多程式設計師為了追求高大上都忽略了。
前幾年我開始帶應屆生,有本科有碩士,到實際工作中發現,工作能力差距並不在於學歷,而在於經驗和思考。有的同學可以寫一手好程式碼,使用的方法得當,程式碼分支健壯,而有的同學寫的程式碼則慘不忍睹,雖然勉強能實現功能,但是使用的方法並不合適,也有很多同學重複造輪子,絞盡腦汁寫了一個工具類已經有的方法。
如果單純為了炫技而寫的程式碼,那肯定不是工作需要的,但是能寫出賞心悅目的健壯程式碼,那一定是基於多年的程式碼修養寫出的。
很多Java教材和書籍都傾向於從小白開始介紹java的基礎,然後全面而冗餘地介紹所有java內容,等到實際工作中發現工作需要的java技術並沒有掌握,而工作中並不需要的java技術(比如Swing)卻佔用了一定學習時間。更有甚者,面試時,一堆分散式和高併發理論,實際程式碼,連個執行緒安全方法都不會寫,所以實用才是王道。
基於上述情況,筆者每次帶新員工的時候都會從編碼規範到必備基礎知識開始讓他們學習。
本次筆者根據在華為和阿里的工作經驗,決定籌劃整理和編寫一本java實用技術,力求用最實用的技術幫助新入行的程式設計師成長,這裡不炫技,只學技。前年機械工業出版社編輯找過我談出書,當時因為太忙碌最終沒有簽約。
這次我決定先通過部落格形式更新章節,如果大家反饋較好,後面再整理出書吧。
筆者假定閱讀本書的讀者已經具備必要的java基礎知識,文中並不會全面講解java的語法、控制語句和麵向物件等概念,如有必要,請自行參看相關教材。
希望本書可以成為Java工程師踏入職場的第一本Java書。歡迎加入QQ交流群:
866944450
對於每個章節,如果你有更好的方法,歡迎在評論區留言。
文中如有錯誤和不妥,也懇請指正。
PS:同名公眾號同步更新。
全書思維導圖
章節介紹
章節劃分
本書計劃分為4篇,共15章。
其中第一篇為程式設計習慣和開發工具的介紹,俗話說磨刀不誤砍柴工,良好的程式設計習慣會受益終身,而順手的開發工具會顯著提升戰鬥力。
第二篇為主要內容,包括了必備的String、陣列、集合、物件、介面、異常和常用工具包。該篇內容以實際工作為內容,遴選優秀方法進行精講,再給出實際程式碼進行應用講解。最後將必備介面列舉出來供大家自行學習。
第三篇綜合性內容,包括了設計模式、Lambda表示式、Stream流式計算等高階技術,以及Spring基礎、Maven等工具技術。這些技術在實際工作中可以提高程式碼質量,提高程式碼優雅性。
第四篇屬於高階內容,反射、列舉、IO和併發會簡要介紹,Spring框架、多執行緒、快取和分散式系統等內容作為預告,在以後的《Java高階實用技術》中詳細介紹。
如果大家對章節劃分有更好的意見,也歡迎私信或者評論。
小節
每個章節下面會劃分若干小節,每個小節的內容會有文字和程式碼,使用的demo以工作中常用場景為例,程式碼也以精簡為主。當然,不可能所有的例子都恰到好處,如有不妥歡迎指正。
為了避免枯燥的講解和程式碼沙漠,部分小節我會錄製視訊,釋出在西瓜和B站,一起來玩哈。
每個小節結束,我也會以思維導圖的方式做總結,方便大家記憶。
形如:
更新說明
不一定嚴格按照章節順序更新,根據工作忙碌情況決定更新頻率,儘量每週更新一個章節。
有些內容可能使用程式碼演示的方式更好,因此我會選取部分內容手寫程式碼演示,配套視訊釋出到西瓜/B站,也歡迎大家前往交流。
書中程式碼樣例我會在每期結束,統一整理到GitHub,如果你有更好的內容,也歡迎私信我新增到更新內容。
目前我僅在掘金社群和微信公眾號第一時間釋出,如需轉載,請聯絡我獲得授權。