对程序员来说,较好的学习也是阅读,多看别人优秀的代码,加以总结学习应用 。如果你想成为一个更好的开发者,就必须阅读大量的代码 。
书本,博客,论坛在一定程度上都是比较好的,但是比不上一些功能完整详细的开源项目 。
所以你要做的就是喝着咖啡看代码 。O(∩_∩)O哈哈~
下面列出来一些比较好的开源项目,每个项目都标注有难易程度 。希望可以帮到你~
LeafPic
(|| Difficulty: 初级)
照片墙类的app是比较常见的 。你是否有想过它们是如何开发的呢?LeafPic就是一个比较好的开源照片墙类的APP 。
这个项目较简单,容易上手,比较适合初级选手 。值得一提的是它包含了切换主题这一功能 。
Simple Calendar
(|| Difficulty: 初级)
展开全文
这是一款用Kotlin语言编写的日历app 。如果你想学Kotlin,这个开源项目绝对能帮到你 。该项目还可以帮助你学习到添加桌面小工具 。
Amaze File Manager
(|| Difficulty: 中级)
文件管理类的app也是一类比较常见的应用 。
做一个能适配大部分android设备的管理类app是相当难的 。你可以从这个项目中学到很多,尤其是处理SD卡上的文件 。
但是不建议参考这个项目的编码,因为不够标准 。
Easy Sound Recorder
(|| Difficulty: 初级)
这是一款简单的录音app 。如果你想学关于录音方面,这个开源项目可以帮到你 。
该项目只有一个Activity,代码非常好理解,并且采用的是MD设计 。
MLManager
(|| Difficulty: 初级)
该软件可帮助管理手机里面的apps 。从这个项目中可以学到如果获取软件的详细信息,导出apk,卸载软件等功能 。
这个项目的编码风格很好,可以借鉴,它的简洁代码设计和MD设计都可以参考 。
PhotoAffix
(|| Difficulty: 初级)
这款应用可以水平或者垂直合并图像 。从它的代码中可以学到简单的自定义控件基础 。
MovieGuide
(| Difficulty: 中级)
该项目采用了MVP,Clean架构进行开发 。包含了RxJava和Dagger2的应用 。
AnExplorer
(|| Difficulty: 中级)
同样是一款轻量级的文件管理器,适用于手机和平板 。
root管理,loaders,自定义控件等功能都可以从这个项目中学到 。

文章插图
Minimal ToDo
(|| Difficulty: 初级)
该项目比较适合初学者学习参考 。
Timber
(|| Difficulty: 高级)
Timber是一款设计非常漂亮的音乐播放器,如果你正在开发一款属于自己的播放器,那么正好可以参考学习一下这个 。
这个项目距比较大,但是非常受欢迎 。
AnotherMonitor
(|| Difficulty: 中级)
该项目可以帮助你了解到监控系统进程,内存使用,CPU使用等情况 。
代码风格较好,简单容易理解 。但是UI设计不敢恭维 。
InstaMaterial
(| Difficulty: 初级)
该项目学习了Instagram这款应用的材料设计,正好可以帮助你提高你的MD水平 。
Cocoin
(| Difficulty: 初级)
Cocoin是一款个人财务记账软件 。该项目可以帮助你学到操作大量用户数据,绘制漂亮的表格,自定义比较酷的控件等 。
OmniNotes
(|| Difficulty: 中级)
这是款类似于Evernote的笔记类app 。
该项目由大量的功能,比如分享和收缩note,在note中可添加图片,视频,音频,sketch等附件,还可以添加提醒人 。
Clip Stack
(|| Difficulty: 初级)
该项目是一个简洁漂亮的剪切板管理软件 。
Super Clean Master
(| Difficulty: 高级)
这是一个模仿【清理***】的应用 。
- 如何矫正视力 眼睛近视如何矫正视力
- 如何删除文件夹 鸿蒙系统如何删除文件夹
- 如何设置指纹 如何设置指纹解锁手机华为
- 如何编辑网页 如何制作一个网页
- 如何微信软件 电脑如何微信软件
- 如何制作flash 如何制作flash小游戏
- 颈椎病如何自我治疗 颈椎病如何自我治疗视频
- 如何填报高考志愿 2022年如何填报高考志愿
- 如何删除360 如何删除360导航
- 产妇奶涨怎么办 如何解决产妇初期涨奶
