為了幫助您成為更好的開發人員並在您的職業生涯中做得更好,讓我們看看今年成為更好Java程序員的5個辦法:
- 學習JVM內部和Java性能調優
- 每天寫代碼
- 每月一次配置您的Java應用程序
- 參與編程挑戰
- 學習Java中的套接字編程
1.學習JVM內部和Java性能調優
我已經為高級Java開發人員進行了50多次採訪,並且我已經清楚地看到缺少的一項技能是關於JVM內部,GC行為和Java性能調優的知識和理解。
隨著您的Java體驗的增長以及您成為具有超過5到6年經驗的高級Java開發人員,您希望從中獲得關於基礎知識的全局和小細節。
如果您無法分析應用程序或無法弄清楚為什麼它很慢或如何使其快速,那麼您應該閱讀一本關於JVM內部和性能調整的好書。
一本書顯然是Java社區最新和最受推薦的書籍:Scott Oaks的暢銷書Java Performance the Definitive指南。
我已經閱讀了幾次,每當我有空的時候仍然會參考它。
2.每天編寫代碼
我去年注意到的另一件事是隨著你的經驗增長,你花時間進行協調,回覆電子郵件,成為催化劑,故障排除者,導師和項目經理。
你留下的是編碼,這是程序員最重要的技能。如果您認為自己沒有做足夠的編碼,那麼每天都要編寫解決方案。
至少,寫一些東西,無論是你的項目,開源框架,庫還是實用程序。由於開始是最困難的事情,我建議任何時候你感到牴觸,開始閱讀和重構代碼以獲得樂趣。
您將享受這一點,在此過程中,您還將編寫代碼。你也可以解決 Cracking the Coding Interview,189 Programming Questions。
這不僅可以讓您為面試做好準備,還可以提高您對數據結構,算法和編程邏輯的瞭解。
3.每月一次配置您的Java應用程序
我建議您至少在一個月內對Java應用程序進行概要分析,並花些時間來理解和分析結果。
如果最近Java應用程序崩潰,那麼您也可以進行Java處理器的堆轉儲,然後獲取該堆轉儲並找出佔用大部分內存的對象,Java應用程序中是否存在內存洩漏?
您的申請緩慢的原因是什麼?如果另外100,000個新客戶將訪問您的應用程序,會發生什麼?如果你能夠舒服地回答所有這些問題,那麼你就處於良好的狀態。
如果您需要一些解決內存和CPU問題的指導,我建議您看一下 Richard Warburton 理解和解決Java內存問題 。
4.參與編程挑戰
如果您正在尋找具有挑戰性的代碼,那麼沒有比參與編程和編碼挑戰更好的了。
互聯網上有許多網站承擔編程挑戰,讓您有機會測試您的技能,但TopCoder是最好的。
5.學習Java中的套接字編程
我去年從50多次Java訪談中學到的另一件事是,Java開發人員需要改進他們的套接字編程和網絡基礎。
我從我的Java網絡編程問題列表中提出了許多問題,但大多數Java開發人員都未能回答大部分問題。
他們中的一些人甚至很難概述TCP和UDP協議之間的關鍵差異,我認為這對於任何具有2到5年經驗的Java開發人員來說太基礎了。
如果您覺得自己沒有足夠的機會學習Java中的Socket編程,或者您不需要因為您是Java Web開發人員在JSP,Servlet和JSF中工作,那麼我建議您至少閱讀一本關於Java的好書。網絡,NIO和套接字編程。
我強烈推薦的一本書是Java中的TCP / IP套接字,第二版,程序員實用指南,它易於閱讀,有趣且易於在Socket上構建基礎知識。
結論
因為我個人認為小的成功會帶來巨大的成功,設定小的目標並實現它們比設定一個大的,不切實際的目標並且在開球前失敗更好。
但是,如果你想添加更多東西,你可以隨時添加類似學習Java 11或Java 12等新版Java的東西,學習Spring的新版本,比如Spring 5和DevOps。如果您不熟悉Jenkins,Docker和Kubernetes等工具那麼你也可以將它們添加到今年的決議列表中。
寫在最後:
歡迎留言討論,如需Java方面的架構資料,我這裡剛好有一份,怎麼領取→→→關注+轉發 然後私信“架構資料” 即可領取
點關注,不迷路,持續更新!!!
閱讀更多 Java高級架構獅 的文章