简介

9/4/2023

# 这是什么?

安卓现代化开发指南(简称「指南」)是一个面向真实开发场景的安卓现代化技术实践指南,旨在降低安卓开发者在部署安卓现代化技术中的开发难度以及避免踩坑碰雷。

指南并不只是简单的为读者提供一份api的调用说明的手册,而是先通过阐述过去的开发模式的缺点和痛点,逐渐过渡到现代化技术中,提出用现代化技术解决过去开发模式的问题,还会提供一些常见的开发场景的解决方案。

指南诞生的初衷有两个,一个是笔者作为学习安卓过程中的心得思路记录,第二个是在工作中发现许多安卓开发者并不能很好掌控那些安卓现代化开发技术,因为对于很多人来说,学习不断诞生的新技术和平衡繁忙的工作是一件非常困难的事情,因此指南旨在降低这一类开发者的学习成本,为他们提供便利。

# Android Jetpack (opens new window)

近几年来,Jetpack不断的深化发展和在业内的逐渐推广开来,其已经成为了事实上的开发者必备知识。通过这个额外的开发库,安卓开发者可以解决安卓开发中常见的数据存储、生命周期管理、路由管理等问题,与第三方的解决方案不同的是,Jetpack是生态统一的,也就是不同的库之前可以很好的协调。

因此Jetpack在指南中将会占据最大的篇幅。

# Kotlin (opens new window)

在18年宣布成为安卓的第一开发语言后,Kotlin正在以肉眼可见的速度占领着安卓开发语言中的更多份额,越来越多的公司已经停止了Java语言的开发并全面转向Kotlin。但是Kotlin的出现并不是为Java语言多提供几个扩展函数或者语法糖(或者说主要的目的并不是),Kotlin的许多诸如协程的优秀特性确确实实能够解决安卓开发中的一些复杂的状态管理的问题,然而许多开发者转向Kotlin仍然以Java的思路在开发Kotlin,亦或者对Kotlin的一些特性不理解以致于出现了出乎意料的结果,指南也会花费一些篇幅去为安卓开发者讲解Kotlin。

# 为什么我不去看谷歌开发者文档?

谷歌开发者文档确实是每一个开发者需要去阅读的,笔者也非常推荐你先去读了谷歌编写的开发者文档再来阅读指南指南的初衷并不是替代开发者文档,而是扩充开发者文档,诸如新旧技术之间的关系。

当遇到新的开发技术的时候,开发者并不会重建项目、丢掉旧的开发模式,全面投入新的开发模式,更多情况下是新旧代码混合的,因此开发者必须完全理解新旧模式的关系与差异,才能更好的在新旧代码混合的项目中写出正确的、兼容的代码亦或者迁移旧代码。

换句话来说,开发者文档像是产品的使用说明,指南更像是产品的使用心得。

# 阅读的正确姿势

无论在何种情况下,都不要把本博客的任何内容奉为涅槃,博客的任何内容均为笔者本人结合网络资料的自我思考的过程,仅提供为广大程序员一个思考的索引与脉络,即抛砖引玉。如果你发现博客中存在任何错误或者不完善的地方请及时通过博客右上角的链接私信笔者。

# 更多内容?

未来会的,但是不是现在。

# 谁在编写?我能参与吗?

目前而言,只有笔者一个人在维护并编写这份文档,如果你也想分享你的开发心得,可以通过网站右上角的联系方式来联系笔者。欢迎所有人投稿,文章会留有投稿者的昵称和联系方式。