摘要:是學習動畫很好的項目,項目代碼量比較少,也很適合新手學習。遵循了谷歌材料設計,加入了一些以上的新特性,閱讀體驗絕不遜色于官方的。架構項目地址由谷歌工程師開發,展示的材料設計,項目代碼量大,但是結構清晰,還是很好理解的。
1.Material Animations
演示View的平移、縮放動畫,activity進入和退出動畫,界面間元素共享。是學習動畫很好的項目,項目代碼量比較少,也很適合新手學習。
項目地址GitHub: https://github.com/lgvalle/Ma...
2.Meizhi每天推送一張妹子圖、一個小視頻和一系列程序員精選文章,數據來源于代碼家的干貨集中營。
架構: MVC
圖片加載:picasso
網絡請求:RxJava & Retrofit+okhttp
界面: 遵循google材料設計
其他:nineoldandroids,photo view,numberprogressbar,umeng-analytics,rxandroid,butterknife,otto。
項目地址github:https://github.com/drakeet/Me...
3.LookLook可以閱讀知乎日報,網易頭條,同時每日推送一張妹子圖片和視頻,是一個精美的閱讀軟件。遵循了谷歌材料設計,加入了一些5.0以上的新特性,閱讀體驗絕不遜色于官方的app。
架構: MVP
圖片加載:glide
網絡請求:RxJava & Retrofit+okhttp
界面: 遵循google材料設計
其他:Cardview,RecycleView,Butterknife,PhotoView
項目地址github:https://github.com/xinghongfe...
4.android-UniversalMusicPlayer這個開源項目展示了如何實現一個橫跨各種Android平臺的音樂播放器,包括手機,平板,汽車,手表,電視等。
架構:MVC
項目地址github:https://github.com/googlesamp...
5.plaid由谷歌工程師開發,展示google的材料設計,項目代碼量大,但是結構清晰,還是很好理解的。
架構: MVC
圖片加載: glide
網絡請求:RxJava & Retrofit
其他:RecycleView,Butterknife
項目地址github:https://github.com/nickbutche...
總結:建議學習順序從第一個開始一直到最后一個,由易到難。項目中用到的開源庫,如果不熟悉,網上搜一些文章進行學習,把開源庫的基本使用都了解了之后再去看項目,這樣就不會一頭霧水。當下比較流行的技術有RxJava + Retrofit+okhttp,RecycleView,Butterknife,Glide等,這些技術在LookLook項目中都用應用,如果把LookLook這個項目搞懂了,基本就沒有問題了。
看開源項目的心得:剛開始看一些項目可能會感覺沒有頭緒,項目看多了,就不會有這種感覺了,只要靜下心,一切都ok了。
準備工作: 下載項目,編譯后運行在虛擬機或真機上,讀README了解項目概況。
看項目源碼:打開Manifest文件,找到入口activity,簡要瀏覽項目中有一些什么activity,Broadcast Receiver,Service。然后在虛擬機或真機上打開程序對照源碼看。順藤摸瓜,一步一步往下看,第一遍可能不會完全看懂。第一遍就是把程序運行的主要脈絡搞懂,熟悉項目中用到的開源庫和知識點,如果有自己不熟悉的,上網搜一些文章學習。第一遍主要脈絡搞懂了之后,再進行第二遍,第三遍,甚至第四遍,每一遍都會加深對代碼的理解。
如果你的項目看多了之后你會發現一個項目可以分為以下幾個模塊:
activity 和fragment
adapter
數據實體
第三方開源庫的使用,網絡、圖片、其他工具
一些工具類
項目配置類
自定義View
其他(數據庫,activity、fragment的基類,API等)
任何事情都可以熟能生巧,在看了一些開源項目后,自己最好開發一個。看項目源碼是一個很費腦子的事情,不能急于求成,我之前就有點著急,看了很多項目,高強度的進行了20多天后,把自己徹底累壞了,掉頭發很嚴重,大腦嚴重勞累過度,休息了一個星期才緩解過來。所以建議大家制定一個合理的學習時間,不要讓自己強度太大。
最后的感覺就是,看似不可思議的事情,只要自己靜下心來,按部就班,最后發現都不過如此嘛。
既然閱讀源碼這么重要,那該如何讀?請看我另一篇文章閱讀源碼的經驗總結(android程序員)
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/65095.html
摘要:對于一個有追求的程序員來說必須讀源碼,當然閱讀源碼是一件令人頭疼的事。和差不多,想法一樣,但是和相比,搜索到的有價值結果不是很多,沒有的理想,還有一些來著百度知道。 對于一個有追求的程序員來說必須讀源碼,當然閱讀源碼是一件令人頭疼的事。閱讀別人的代碼遠比自己寫代碼要難。Linus 是Linux的早期作者,一句影響深遠的話是Read The Fucking Source Code(RTF...
閱讀 866·2021-11-25 09:44
閱讀 1081·2021-11-19 09:40
閱讀 7106·2021-09-07 10:23
閱讀 1986·2019-08-28 17:51
閱讀 1113·2019-08-26 10:59
閱讀 1935·2019-08-26 10:25
閱讀 3142·2019-08-23 18:22
閱讀 871·2019-08-23 16:58