2017 我所分享的技術文章總結(下)
> 對下半年所分享的文章進行整理
2017 上半年我整理的好文章(上)(98 篇)很多讀者當時忘記了收藏,以致於查找一篇歷史文章很費勁,因此在這裡順便做下記錄。目前就分下下面幾個大類,沒有更多細分,已基本可以查找了。
> 如果覺得博客還是有些不方便,請戳此處
![看看2018的起跑路線.png](https://user-gold-cdn.xitu.io/2018/1/1/160b08c0f03e4d5c?w=1240&h=826&f=png&s=1598620)
### App 系列(高仿、練手等)
[你好,芒果!使用 RxKotlin 開發的 Dribbble App.](你好,芒果!使用 RxKotlin 開發的 Dribbble App.)
[分享我學習 Androd 開發過程中寫的小項目](分享我學習 Androd 開發過程中寫的小項目)
[來自大學生投稿:一個適合新手上手的商城項目](來自大學生投稿:一個適合新手上手的商城項目)
["DeepNight-in-kotlin"一個純看妹紙的 Kotlin 開源項目]("DeepNight-in-kotlin"一個純看妹紙的 Kotlin 開源項目)
### 自定義 / 仿系列
[自定義 View—手把手教你擼出一個圓形載入進度條](自定義 View—手把手教你擼出一個圓形載入進度條)
[Android 仿微信朋友圈,縮放歸位功能詳細解析](Android 仿微信朋友圈,縮放歸位功能詳細解析)
[玩轉仿探探卡片式滑動效果](玩轉仿探探卡片式滑動效果)
[高仿網易嚴選底部彈出菜單](高仿網易嚴選底部彈出菜單)
[自定義 Drawable 實現靈動的紅鯉魚動畫(上篇)](自定義 Drawable 實現靈動的紅鯉魚動畫(上篇))
[Android 自定義 View 之繼承擴展(仿網易雲音樂聽歌識曲)](Android 自定義 View 之繼承擴展(仿網易雲音樂聽歌識曲))
[Android 高仿懂球帝我是教練效果](Android 高仿懂球帝我是教練效果)
[Android 上一個類似 PathMenu 效果的自定義 View 源碼分析](Android 上一個類似 PathMenu 效果的自定義 View 源碼分析)
[自定義 View:用貝塞爾曲線繪製酷炫輪廓背景](自定義 View:用貝塞爾曲線繪製酷炫輪廓背景)
[回爐再造,靈活的 YMenuView 2.0 誕生](回爐再造,靈活的 YMenuView 2.0 誕生)
[自定義 LayoutManager 實現弧形以及滑動放大效果 RecyclerView](自定義 LayoutManager 實現弧形以及滑動放大效果 RecyclerView)
[自定義 View 之炫酷的成績展示界面](自定義 View 之炫酷的成績展示界面)
[仿知乎內容廣告欄 WindowImageView](https://mp.weixin.qq.com/s/VZnDPLzMDD-c7nV0KIWPnQ)
[仿微信表情輸入鍵盤(支持 Gif 表情圖文混排 )](仿微信表情輸入鍵盤(支持 Gif 表情圖文混排 ))
### 框架/庫(封裝使用)
[為 Retrofit2 提供的 FastJson 轉換庫](為 Retrofit2 提供的 FastJson 轉換庫)
[一步一步帶你認識 MVP+Retrofit+Rxjava 並封裝(二)](一步一步帶你認識 MVP+Retrofit+Rxjava 並封裝(二))
[Android 和 H5 交互-框架篇](Android 和 H5 交互-框架篇)
[大神帶你看——fastjson 那些事.pptx](大神帶你看——fastjson 那些事.pptx)
[三行代碼實現 TabLayout+ViewPager 的 Tab 滑動效果,從封裝到開源](三行代碼實現 TabLayout+ViewPager 的 Tab 滑動效果,從封裝到開源)
[小之的架構之路——Android MVVM 面向介面型框架封裝和單元測試](小之的架構之路——Android MVVM 面向介面型框架封裝和單元測試)
[少年郎,你需要封裝好的 ViewPager 工具類](少年郎,你需要封裝好的 ViewPager 工具類)
### 求職
[帝都三年 Java,說說我的求職之路](帝都三年 Java,說說我的求職之路)
[四步準備 Android 面試](四步準備 Android 面試)
[Android 面試 | 全站式導航](Android 面試 | 全站式導航)
[值得借鑒:耗時兩個月的求職經歷](值得借鑒:耗時兩個月的求職經歷)
[面試官之初體驗,請考慮](面試官之初體驗,請考慮)
[經歷的某度的一場面試](經歷的某度的一場面試)
[一個三本學生的面試之旅](一個三本學生的面試之旅)
[漫無止境的秋招](漫無止境的秋招)
### 乾貨
[程序員,你還沒有軟技能嗎?難怪你不幸福](程序員,你還沒有軟技能嗎?難怪你不幸福)
[十年的老代碼,你敢動?](十年的老代碼,你敢動?)
[程序員成長曆程的四個階段](程序員成長曆程的四個階段)
[2017 | 我在 5 個月時間裡分享了 98 篇文章](2017 | 我在 5 個月時間裡分享了 98 篇文章)
[「譯文」資深程序員應該有的樣子](「譯文」資深程序員應該有的樣子)
[預告 | 送書福利](預告 | 送書福利)
[非常有用的資源合集-開發設計再也不愁啦](非常有用的資源合集-開發設計再也不愁啦)
[給編程生涯充電的 10 本書](給編程生涯充電的 10 本書)
[推薦幾個開源庫](推薦幾個開源庫)
### 源碼分析
[三步掌握 Android 中的 AIDL](三步掌握 Android 中的 AIDL)
[Android 進階 - 視圖層級實時分析(含福利)](Android 進階 - 視圖層級實時分析(含福利))
### 職場
[中國程序員如何升職加薪,也許我們該學學印度人](中國程序員如何升職加薪,也許我們該學學印度人)
[躍遷:成為高手的技術](躍遷:成為高手的技術)
### 經驗分享
[程序員應該讀的 7 本計算機書](程序員應該讀的 7 本計算機書)
[一個老程序員的建議](如何閱讀代碼(八點要記牢))
[Android 新手如何學習開發一款 app?](Android 新手如何學習開發一款 app?)
[種一棵樹最好的時間是十年前,其次是現在](種一棵樹最好的時間是十年前,其次是現在)
[30 歲程序員的選擇,一線 OR 二線?](30 歲程序員的選擇,一線 OR 二線?)
[軟體開發中的 10 條最佳指導原則](軟體開發中的 10 條最佳指導原則)
[如何打造個人技術影響力](如何打造個人技術影響力)
[6 天時間修改 1 行代碼:現實中的軟體開發流程](6 天時間修改 1 行代碼:現實中的軟體開發流程)
[程序員、架構師、技術經理、技術總監和 CTO 都是幹什麼的?](程序員、架構師、技術經理、技術總監和 CTO 都是幹什麼的?)
[如何有效報告 bug](如何有效報告 bug)
[我的 10 年自學編程之路](我的 10 年自學編程之路)
[別讓程序員停止在 35 歲,如何讓我們走得更遠](別讓程序員停止在 35 歲,如何讓我們走得更遠)
[編程的自學方法](編程的自學方法)
[開除了沒情商的「技術大神」後,整個團隊都好起來了](開除了沒情商的「技術大神」後,整個團隊都好起來了)
[程序員的五種不同尋常的特質](程序員的五種不同尋常的特質)
### 完整系列
[Android 開發之漫漫長途Ⅰ—Android 系統的創世之初以及 Activity 的生命周期](Android 開發之漫漫長途Ⅰ—Android 系統的創世之初以及 Activity 的生命周期)
[Android 開發之漫漫長途 Ⅱ——Activity的顯示之Window和View(1)](Android 開發之漫漫長途 Ⅱ——Activity的顯示之Window和View(1))
[Android 開發之漫漫長途 Ⅲ—Activity 的顯示之 Window和View(2)](Android 開發之漫漫長途 Ⅲ—Activity 的顯示之 Window和View(2))
[Android 開發之漫漫長途 Ⅳ——Activity 的顯示之 ViewRootImpl 初探](Android 開發之漫漫長途 Ⅳ——Activity 的顯示之 ViewRootImpl 初探)
[Activity 顯示之 ViewRootImpl的PreMeasure、WindowLayout、EndMeasure 等方法](Activity 顯示之 ViewRootImpl的PreMeasure、WindowLayout、EndMeasure 等方法)
### 項目中的技術
**Gradle**
[Android 解鎖 Gradle 依賴新姿勢](Android 解鎖 Gradle 依賴新姿勢)
[Gradle 的高級技巧](Gradle 的高級技巧)
[提速 Android Gradle 構建](提速 Android Gradle 構建)
**優化/瘦身**
[Android 性能小技巧](Android 性能小技巧)
[Android APK 瘦身實踐](Android APK 瘦身實踐)
**組件化**
[Android 組件化 —— 路由設計最佳實踐](Android 組件化 —— 路由設計最佳實踐)
[Android 徹底組件化 demo 發布](Android 徹底組件化 demo 發布)
[Android 徹底組件化番外篇-gradle3.0.0](Android 徹底組件化番外篇-gradle3.0.0)
**小程序**
[微信小程序實戰篇-個人中心](微信小程序實戰篇-個人中心)
**JVM**
[Android 進階之簡述 JVM 基礎(一):走進Java](Android 進階之簡述 JVM 基礎(一):走進Java)
[Android 精進之簡述 JVM 基礎(二):Java內存區域與內存溢出異常](Android 精進之簡述 JVM 基礎(二):Java內存區域與內存溢出異常)
[Android 精進:簡述 JVM 基礎(三):垃圾收集器與內存分配策略](Android 精進:簡述 JVM 基礎(三):垃圾收集器與內存分配策略)
[簡述 JVM 基礎(四):類結構文件](簡述 JVM 基礎(四):類結構文件)
[簡述JVM基礎(五):虛擬機類載入機制](簡述JVM基礎(五):虛擬機類載入機制)
[簡述JVM基礎(六):虛擬機位元組碼執行引擎](簡述JVM基礎(六):虛擬機位元組碼執行引擎)
[簡述JVM基礎(七): Java 內存模型與線程](簡述JVM基礎(七): Java 內存模型與線程)
---
[Android 計步模塊(類似微信運動)](Android 計步模塊(類似微信運動))
[HTTP1.0、HTTP1.1 和 HTTP2.0 的區別](HTTP1.0、HTTP1.1 和 HTTP2.0 的區別)
[你被下拉刷新和上拉載入搞煩了嗎?](你被下拉刷新和上拉載入搞煩了嗎?)
[Android 下實現高效的模糊效果](Android 下實現高效的模糊效果)
[RecyclerView 簡單到想哭的多條目實現](RecyclerView 簡單到想哭的多條目實現)
[程序員都該懂點 HTTP](程序員都該懂點 HTTP)
[WebView 開車指南之最全實用案例](WebView 開車指南之最全實用案例)
[震驚!阿里熱更新框架 Sophix 背後隱藏的真相竟然是……](震驚!阿里熱更新框架 Sophix 背後隱藏的真相竟然是……)
[Android 仿微信朋友圈全文、收起功能](Android 仿微信朋友圈全文、收起功能)
[Android 的毛玻璃模糊效果,我使用 OpenCV 來搞](Android 的毛玻璃模糊效果,我使用 OpenCV 來搞)
[「DragMoreScrollView」一種相冊交互效果的實現](「DragMoreScrollView」一種相冊交互效果的實現)
[關於多選(有動畫)解決方案,你需要的可能是這個](關於多選(有動畫)解決方案,你需要的可能是這個)
[關於 Android Zxing 3.3.0 的填坑](關於 Android Zxing 3.3.0 的填坑)
[Android 錄音功能直接拿去用](Android 錄音功能直接拿去用)
[Android 實現 dialog 的 3D 翻轉](Android 實現 dialog 的 3D 翻轉)
[仿房產銷冠 APP 銷控表界面-多 RecyclerView 同步滾動](仿房產銷冠 APP 銷控表界面-多 RecyclerView 同步滾動)
[D 項目 Android 模塊化 VCS 演進之路](D 項目 Android 模塊化 VCS 演進之路)
[使用 ACTION_IMAGE_CAPTURE 可能存在的風險](使用 ACTION_IMAGE_CAPTURE 可能存在的風險)
[Android 中的工廠模式(減少 if-else 和 switch-case)](Android 中的工廠模式(減少 if-else 和 switch-case))
[Android Transition Framework 詳解---超炫的動畫框架](Android Transition Framework 詳解---超炫的動畫框架)
[Android 一起來看看 7.0 的新特性 FileProvider](Android 一起來看看 7.0 的新特性 FileProvider)
[Android 如何在應用程序一段時間無操作後 退出登錄](Android 如何在應用程序一段時間無操作後 退出登錄)
[Android Dex 分包](Android Dex 分包)
[細細品讀 Retrofit 的設計之美一](細細品讀 Retrofit 的設計之美一)
[細細品讀 Retrofit 的設計之美 二](細細品讀 Retrofit 的設計之美 二)
[Android Binder—APP->framework(mRemote的前世今生)](Android Binder—APP->framework(mRemote的前世今生))
[使用 Dagger2 前你必須了解的一些設計原則](使用 Dagger2 前你必須了解的一些設計原則)
[在 Android 上,一個完整的 UDP 通信模塊應該是怎樣的?](在 Android 上,一個完整的 UDP 通信模塊應該是怎樣的?)
[MediaPlayer 實現金額的語音播報功能](MediaPlayer 實現金額的語音播報功能)
[Android 廣播的那些事兒](Android 廣播的那些事兒)
[視差動畫 - 雅虎新聞摘要載入](視差動畫 - 雅虎新聞摘要載入)
[Android App 自動化測試: OPEN-STF環境搭建](Android App 自動化測試: OPEN-STF環境搭建)
[一個容錯的 Gson 新世界](一個容錯的 Gson 新世界)
[Android 談談自動化測試](Android 談談自動化測試)
[Android?Lottie 動畫庫填坑記](Android?Lottie 動畫庫填坑記)
[MixPanel -Android 端埋點技術研究](MixPanel -Android 端埋點技術研究)
[視頻播放技術匯總(列表播放,小窗播放,跨界面播放,播放中網路切換提示)](視頻播放技術匯總(列表播放,小窗播放,跨界面播放,播放中網路切換提示))
[巧用 Fragment,解耦 Android6.0 許可權適配手記](巧用 Fragment,解耦 Android6.0 許可權適配手記)
[漫畫:什麼是B-樹?](漫畫:什麼是B-樹?)
[微信 Tinker 在 Android 中集成以及使用](微信 Tinker 在 Android 中集成以及使用)
[Android 端「被擠下線」功能的實現](Android 端「被擠下線」功能的實現)
[Android 手機 全面屏(18:9屏幕)適配指南](Android 手機 全面屏(18:9屏幕)適配指南)
[Android 藉助 Python 實現自動打包上傳 fir](Android 藉助 Python 實現自動打包上傳 fir)
[帶你通俗易懂的理解——線程、多線程與線程池](帶你通俗易懂的理解——線程、多線程與線程池)
[Android NFC 技術解析,附 Demo 源碼](Android NFC 技術解析,附 Demo 源碼)
[Android 中.aar文件生成方法與用法](Android 中.aar文件生成方法與用法)
[Android 鍵盤適配-中英文適配](Android 鍵盤適配-中英文適配)
[軟體開發知識體系](軟體開發知識體系)
[熱修復——Tinker 的集成與使用](熱修復——Tinker 的集成與使用)
[AndroidStudio JNI詳細教程+Gradle3.0 以上 JNI 爬坑之旅](http://mp.weixin.qq.com/s/hdWjr7A7wiSoHKI3VnsT5w)
[熱修復——Bugly 讓熱修復變得如此簡單](http://mp.weixin.qq.com/s/rv7cUIOoLx60QZisAG0yyg)
[Android Lint增量掃描實戰紀要](http://mp.weixin.qq.com/s/RMz0y0nXatupoUomoWOtmQ)
[理解 Android 硬體加速原理的小白文](http://mp.weixin.qq.com/s/Xodc0Eg7_rn24OdKRbntSA)
---
> 更多技術與提升技術的好文章,請關注訂閱號:「code小生」
推薦閱讀: