不僅僅涉及代碼,還涉及設計方面的思考以及安全方面的誤區。在這個課程中,每節課都是Java業務開發的一個核心關注點,每個知識點對應2~5個案例,并按照“知識介紹->還原業務場景->錯誤實現->正確實現->原理分析->小總結”來講解每個案例,不僅幫你避開這個知識點的常見坑,更讓你能知道產生坑的根本原因,提升自己的技術能力。這些內容不僅可以幫助你寫出更好的代碼,同時也有助于你進一步補全你的知識網增加面試的信心。你甚至可以把這些案例當作代碼審核的Checklist,幫助別的項目一起避坑,幫助團隊一起成長。
本課程包括三大模塊,分別是代碼篇、設計篇、安全篇。
代碼篇:包含開發層面近 20 個方面的坑,涉及多線程、數據訪問、池技術、日志異常、日期時間、IO 和序列化、Spring 框架等。這個模塊,不僅會分析一些代碼的錯誤寫法,還會涉及對基礎知識理解不透導致的踩坑。
設計篇:討論項目技術設計時的一些坑點或誤區,涉及接口、緩存、異步、生產就緒、代碼重復、數據存儲等六個方面的設計。通過場景化的案例、針對可能實際遇到的問題,給出設計思路和最佳實踐。
安全篇:介紹后端開發最容易忽略、卻又是從開發層面來防控效果最好的四個安全問題。包括客戶端數據可信問題、數據和代碼的隔離問題、資源防刷兜底問題,以及敏感數據的處理。
目錄
開篇詞
開篇詞 | 業務代碼真的會有這么多坑?
代碼篇
01 | 使用了并發工具類庫,線程安全就高枕無憂了嗎?
02 | 代碼加鎖:不要讓“鎖”事成為煩心事
03 | 線程池:業務代碼最常用也最容易犯錯的組件