2016年最值得学习的五大开源项目

原创 2016年08月29日 22:29:52

1,Material Animations

演示View的平移、缩放动画,activity进入和退出动画,界面间元素共享。是学习动画很好的项目,项目代码量比较少,也很适合新手学习。

这里写图片描述

Github地址https://github.com/lgvalle/Material-Animations


2,Meizhi

每天推送一张妹子图、一个小视频和一系列程序员精选文章,数据来源于代码家的干货集中营。

这里写图片描述

架构: MVC
图片加载:”picasso”
界面: 遵循google材料设计
其他
nineoldandroids
photoview
numberprogressbar
umeng-analytics
rxandroid
butterknife
otto

Github地址https://github.com/drakeet/Meizhi


3,LookLook

可以阅读知乎日报,网易头条,每日推送一张妹子图片和视频,是一个精美的阅读软件。遵循了谷歌材料设计,加入了一些5.0以上的新特性,阅读体验绝不逊色于官方的app。

这里写图片描述
这里写图片描述

-架构: MVP

-图片加载:”glide”

网络请求:RxJava & Retrofit+okhttp

界面: 遵循google材料设计

其他:

Cardview

RecycleView

Butterknife

PhotoView

Github地址https://github.com/xinghongfei/LookLook

4,android-UniversalMusicPlayer

这个开源项目展示了如何实现一个横跨各种Android平台的音乐播放器,包括手机,平板,汽车,手表,电视等。

这里写图片描述
**架构:**MVC

Github地址https://github.com/googlesamples/android-UniversalMusicPlayer

5,plain

由谷歌工程师开发,展示google的材料设计,项目代码量大,但是结构清晰,还是很好理解的。

这里写图片描述

架构: MVC

图片加载:”glide”

网络请求:RxJava & Retrofit

其他:

RecycleView

Butterknife

项目地址github:https://github.com/nickbutcher/plaid


总结:

建议学习顺序从第一个开始一直到最后一个,由易到难。项目中用到的开源库,如果不熟悉,网上搜一些文章进行学习,把开源库的基本使用都了解了之后再去看项目,这样就不会一头雾水。当下比较流行的技术有RxJava + Retrofit+okhttp,RecycleView,Butterknife,Glide等,这些技术在LookLook项目中都用应用,如果把LookLook这个项目搞懂了,基本就没有问题了。


看开源项目的心得:

刚开始看一些项目可能会感觉没有头绪,项目看多了,就不会有这种感觉了,只要静下心,一切都ok了。

准备工作: 下载项目,编译后运行在虚拟机或真机上,读README了解项目概况。

看项目源码:打开Manifest文件,找到入口activity,简要浏览项目中有一些什么activity,Broadcast Receiver,Service。然后在虚拟机或真机上打开程序对照源码看。顺藤摸瓜,一步一步往下看,第一遍可能不会完全看懂。第一遍就是把程序运行的主要脉络搞懂,熟悉项目中用到的开源库和知识点,如果有自己不熟悉的,上网搜一些文章学习。第一遍主要脉络搞懂了之后,再进行第二遍,第三遍,甚至第四遍,每一遍都会加深对代码的理解。

如果你的项目看多了之后你会发现一个项目可以分为以下几个模块:

1.activity 和fragment

2.adapter

3.数据实体

4.第三方开源库的使用,网络、图片、其他工具

5.一些工具类

6.项目配置类

7.自定义View

8.其他(数据库,activity、fragment的基类,API等)

任何事情都可以熟能生巧,在看了一些开源项目后,自己最好开发一个。看项目源码是一个很费脑子的事情,不能急于求成,我之前就有点着急,看了很多项目,高强度的进行了20多天后,把自己彻底累坏了,掉头发很严重,大脑严重劳累过度,休息了一个星期才缓解过来。所以建议大家制定一个合理的学习时间,不要让自己强度太大。

最后的感觉就是,看似不可思议的事情,只要自己静下心来,按部就班,最后发现都不过如此嘛。

相关文章推荐

最值得关注的10个C开源项目

开源世界有许多优秀的开源项目,我选取其中十个最优秀的、最轻量级的C语言的项目,希望可以为C语言开发人员提供参考。1. WebbenchWebbench是一个在linux下使用的非常简单的网站压测工具。...

2016年值得学习的五大开源项目

文/maat红飞(简书作者) 原文链接:http://www.jianshu.com/p/8180cc105f01 著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。 ...

2016年最值得学习的五大开源项目

【原文:http://www.jianshu.com/p/8180cc105f01】 1,Material Animations 演示View的平移、缩放动画,activity进入和退...

2016年GitHub上史上最全的Android开源项目分类汇总

以下内容为转载 版主原网址 http://itindex.net/detail/51896-github-android-开源 GitHub上史上最全的Android开源项目分类汇总 ...

2015-2016年,哪些开源项目荣登GitHub十强榜单?

2015年可谓是开源项目风光无限的一年。大企业和初创公司都一直在向公众发布代码,以此壮大自身的实力。重要的不光光是代码,而是广大程序员和代码贡献者可以访问代码、更改代码、修复代码,并且改进代码。《软件...

什么是2016年最值得学习的编程语言?

写在前面对于标题这个问题,如果你问我什么是2016年最值得学习的编程语言?我只能老老实实地回答:我也不知道,只能说适合自己的才是最值得学习的编程语言。因为我不知道你对那种语言感冒,你是想从事移动端开发...

2016年最值得关注的5大营销思维变革

移动互联网时代,营销正在经历快速的技术变革和思维碰撞,营销方式正在走向融合,营销业界变化日新月异,对市场营销者自身素质和能力提出了更高要求和考验。以下全球领先的智能化营销服务商Webpower分享的5...

2016年最值得关注的大数据领域33大预测

2016年大数据领域会发生什么情况?考虑到如今在深层神经网络和规范性分析方面取得的进展,你可能觉得这个问题很好回答。而实际上,来自业界的大数据预测大不相同,本文精选出了最值得关注的33个预测,为您开启...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:2016年最值得学习的五大开源项目
举报原因:
原因补充:

(最多只允许输入30个字)