大咖分享笔记(一) | 青训营笔记

117 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第7天

Android未来

是否被替代

“客三消”在网上已经喊了五年,但我们仍然需要有自己的思考,判断Android未来是否有前景的核心就是去看Android系统在近几年是否有被替代的可能,只有当Android底层系统被替代时上层的应用开发才会被逐渐替换,而一个产品的开发周期大概是5到10年,更不必说产品从开发到推广开来的这一过程,因此短时间来看Android客户端开发仍有一定的市场。

除此之外,我们也可以从人们的日常生活中发现,当你走在大街上或者地铁上可以看到许多人都在低头看手机,当人们回到家中时也会经常抱着手机来消磨时间,由此可见,让客户端开发短时间内消失是件不可能的事。但从长远来看,我们除了客户端原生开发以外,还应该去多接触一些如音视频开发、跨端开发等技术。

Android学习路线

那么作为一个Android开发工程师,我们需要学习哪些内容呢?

袁辉辉老师在直播中分享了下面这张图,可以看到业务开发中主要是基本的界面开发以及组件间通信,除此之外我们也需要了解我们经常使用的属性动画、Handler通信等原理,即它们实现的底层源码,以应对开发中可能会出现的各种bug。进阶知识包括架构、跨端、性能优化等等,其实这里我们已经可以选择一个领域进行深耕,成为相关领域方面的专家了。当我们觉得进阶知识学的差不多了,或者说个人兴趣或业务需求,就可以开始深入钻研Android系统底层知识,研究Android框架以及Linux内核的实现原理,这些都是开源的代码。

share-android-knowledge-system.png

跨端开发

跨端开发即使用非封闭式系统语言开发,使得应用能够在多个封闭式操作系统中运行。这里发非封闭式系统语言就指的是我们平常使用的开发语言,如JS、Kotlin、Dart,封闭式操作系统如Windows、Mac、Android。

跨端开发泛指编程语言、软件或硬件设备可以在多种操作系统或不同硬件架构的电脑上运作。例如我们可以基于ReactNative使用JS语言开发出跨Android/iOS的软件,基于Flutter使用Dart语言开发出跨Android/iOS/Web的应用,不同平台上的软件代码逻辑部分可共用。