itsCoder WeeklyBlog 第二期
itsCoder 主頁:itsCoder 主頁
WeeklyBlog 第二期鏈接:WeeklyBlog NO.2
WeeklyBlog 項目第二期文章合集,本期流程更加規範,審閱時間延長,保證每篇文章都是高質量。
本期內容也較爲豐富,有 Android 的基礎知識、源碼分析,也有解決實際開發中的問題的內容,還有一些獨立開發者的內容,同時還有 Python 老司機的技術分享以及設計模式系列的開篇之作。
源碼分析
HashMap 源碼分析 (@allenwu)
深入 HashMap 源碼,講解 JDK 1.7 和 JDK 1.8 HashMap 不同的實現,同時介紹了 hashCode() 方法的具體作用,以及涉及的相關數據結構的分析,一些關鍵點均給出了詳細解釋。SparseArray 的使用及實現原理 (@Joe)
源碼角度深入分析 SparseArray 的實現原理,並分析了其與 HashMap 相比較的優缺點,每個關鍵過程都配上具體的圖來講解原理,十分細緻。其博客上的源碼系列文章都很贊。
Python
- Flask Router 機制初探及 Python 裝飾器複習 (@寫代碼的香港記者)
Python 老司機用 Flask 來作爲閱讀開源源碼計劃的開始,該系列的開篇之作,很適合用來鞏固 Python 的中的很多細節。
設計模式
- 設計模式實踐系列(一) (@brucezz)
設計模式實踐系列的第一篇文章,以一個模擬實際的小場景來講解設計模式,結合例子理解設計模式,將本來空洞的理論講解的生動有趣。
Android
View 的事件分發機制(Android 開發藝術探索讀書筆記)(@yongyu0102)
本文先從文字描述上讓讀者瞭解到事件分發的概念,先有個感性認識,再結合源碼進行事件分發機制的分析,對源碼關鍵的地方均添加了詳細的說明,幫助讀者理解,讓閱讀源碼變得不再那麼可怕。RecyclerView完美實現拖拽、滑動刪除以及撤銷刪除 (@hymane)
本文司機從自己實際開發中出發,使用 ItemTouchHelper 工具類完美實現拖拽、滑動刪除以及撤銷刪除等操作,整個過程都有詳細的代碼給出,並加以說明,對於有這方面需求的開發者來說值得一看。從註冊Google Play開發者到如何使用Google LVL驗證服務 (@Melodyxxx)
本文司機 Melodyxxx 是一名大三的獨立開發者,其開發的 Pure 天氣在國內市場獲得大量好評,最近上線 Google Play,從自己這次上架經歷中總結了一篇完整詳細的教程,從如何註冊 Google Play 開發者到在項目中實現 LVL 驗證均做了詳細說明,很棒的經歷!框架源碼 — 可能會有趣一點地簡析學習 Retrofit (@謝三弟)
謝三弟文辭幽默地從源碼角度分析了 Retrofit 是如何將接口轉換爲網絡請求,並分析出到底是哪裏進行網絡請求,源碼中關鍵點都添加了詳細的說明,對於使用 Retrofit 但是不知道其原理的開發者,本文是一篇不錯的學習文章。Android 中不得不談的 setContentView (@Melo)
對於 Android 開發者而言,setContentView 再熟悉不過了,但是真的熟悉麼?Melo 司機從 setContentView() 方法出發,步步深入,一點點挖掘到源碼深處,同時以實際項目驗證了探究的結果,並給出自己的分析。在這裏還推薦下該站點其他的文章,都有着很高的質量。BottomPopUpDialog底部彈出框的實現 (@shadow)
本文從實際開發中遇到的問題出發,具體從底部彈出框實現的初期分析到實際開發中遇到的一些問題,以及其中的一些小細節,並抽成一個組件,提供必要的 api 來滿足使用者的需求,後期可以考慮加上多樣化的樣式以及更多的自定義屬性的支持。熱修復入門:Android 中的 ClassLoader (@寫代碼的猴子)
本文從比較常用的熱修復基本原理——ClassLoader 方式入手,講解了 Android 中 ClassLoader 機制,以及其與 JVM 中的 ClassLoader的差別,從源碼分析了 Android 中幾種 ClassLoader 的實現,並通過一個簡單的實踐示例驗證前面提到的理論知識。