昨天在diycode.cc上拿到一個話題Android開發書籍推薦:從入門到精通系列學習路線書籍介紹,這裡也簡單推薦下。
選擇當下最適合自己的最重要。
初學Android
對於一個初學者,最大的障礙在於如何用好ide以及項目結構。每一本入門書都繞不開這一個環節。這樣的書需要越新越好。因為ide版本也在不斷升級,一些changelog會讓初學者卡住。這裡不做推薦,只要找最新出版的書就可以了。
有了Android工作的1年裡
一個良好的積累來源於平日的知識吸收。量變會引起質變。這個時間段,多吸收點知識是必要的。從量上首當其衝的就是API文檔,其次就是《第一行代碼》 。再來就是郭霖和鴻洋的博客。能把一個知識點從淺入深的講解成API文檔,也只有他們倆了。
未來的1到2年
積累到一定程度,就需要不斷的通過實戰來補充經驗。Android以坑多,黑科技著稱。沒在坑裡滾過的都不叫真的android程式設計師。如果有本書能幫你快速理出這些坑。那就是《App研發錄》了。雖然裡面也有些寫的不那麼準確的問題,但這不礙事。
2-3年
坑也淌的不少了。也許你曾為了解決某個bug,花了好幾天google遍了,源碼翻爛了都沒能解決。這時候就得考慮考慮,是否應該從原理入手去分析問題。一個component或者一個API是通過怎樣的需求來定製實現的。如果你能從原理上去理解意圖,那在解決問題時會更有方向,而不會想無頭蒼蠅。《Android開發藝術探索》應該就是你需要的書。它雖然沒有幫你具體的解決某個bug,但是它給了你一個宏觀的構圖。以後你會事半功倍。
3年以後
你已經是個合格的開發者了。一些問題都不會再難倒你。但是你在一個team裡與大家協作。如何編寫高質量,可復用的代碼是一生的追求。這類書籍有很多,從具體的《Effective Java》到抽象的《HeadFirst設計模式》再到心中無碼的《敏捷軟體開發:原則、模式與實踐》《重構》再回歸到本質《編程珠璣》。這都是不錯的選擇。
並行
多嘗試其他語言,了解其他語言的優點與特性,與android相互印證。是非常有必要的。
可以嘗試從非技術角度來看技術。《暗時間》 《精進,如何成為一個厲害的人》 都推薦大家看看。高效來自於自我認知
看書的目的,是系統的理解某一相對獨立的點與面。儘量抽整塊的時間來消化,別像看博客,公眾號那樣,手指一划一頁就翻沒了。沒有真正的思考與實踐,就不叫真的理解。平時那些碎片知識如果能通過系統的書籍來整理,是對我們的知識體系的梳理與鞏固。
至於那些還不能消化高階體系的朋友也不用強求,這是一個過程。先知其然,再去知其所以然。選當下最適合自己的,一步步進階,不是更好嗎:)