转载

开发历程

整理了一下个人的开发历程。

Stackoverflow 现在是 1499 Rep

Github 不会推广,靠搜索有了几十个星星

Blog

应用

独立开发、上架了几款应用,累计了几万下载。

计时机器

酷安页面 现在4.8分 / Google Play 现在4.7分

持续维护近两年的应用。

主用Kotlin,辅助Java。架构是MVVM和Clean Architecture的混合体,用Architecture Components实现,分成了18个模块Module。开发过程应用了TDD,为每个核心功能写了单元测试,为UI写了Instrumented Tests。非常注意Code Style,代码全都通过了Detekt和Ktlint。

异步使用了Kotlin Coroutines。数据保存使用了Room。导航使用了有多层NavGraph的Navigation。依赖注入使用了Dagger2-Android。数据序列化使用了对Kotlin友好的Moshi。后台唤醒使用了android-job和WorkManager,文件操作使用了Okio。

Github里的十几个Repo,也都是在开发过程中,写的Custom View和能分离出来的依赖。后端在国内和国外分别用了Firebase和LeanCloud。

开发过程中最大的感想就是,好的架构和抽象真的能让开发和扩展变得很方便。

其他应用

循环计时器: 酷安页面 / Google Play

剪贴板守护: 酷安页面 / Google Play

权限图书馆: 酷安页面

这是一些练手项目。除了上文提到的,这里还使用了Content Provider进行数据管理和其权限,使用了RxJava2进行事件发送、接受和处理,阅读、研究并运行了一些AOSP中的代码。

此外曾写过一个用OCR识别过游戏中文字,使用Retrofit联网查询信息的辅助应用。但因为做出来,游戏就内置了对应的功能,所以没上架。

其他

独立开发的过程中还顺带学了一些其他技能:

  • 凑活的英语:看英文文档、看Google I/O视频、听一听英文Podcast、跟老外聊聊天没什么大问题。
  • 设计原型,改图:计时机器的界面就是用Adobe XD做的;能用各种设计软件简单地改图。
  • 应用上架和运营:画简单的图标、设计应用截图、构思应用介绍、听取用户反馈、求用户给好评。
原文  http://aprildown.xyz/2019/07/07/personal-info/
正文到此结束
Loading...