【突破瓶颈】——技术迭代迷茫?Android资深架构师教你如何打破这个局面!

在这里插入图片描述

前言

程序员一旦焦虑或者迷茫以后,就会对成就感的获得大大降低。长久这样就会导致动力不足。但是现实焦虑也是客观存在的。那我们应该如何面对呢?

在技术的更迭变化过程中,如果一味的跟新技术,那你是否想过,追随新技术的到底是为了什么?是为了跳槽或者转岗?还是为了提高薪资实现人生理想和自我价值?这两个理由都是正确的,需要注意的一点就是不要盲目追随新技术。一味地盲目追随只会导致最终沦为技术的奴隶。我们需要做技术的主人,更加从容的面对技术的变更。

如何选择?

如果在不转岗的情况下,在没有目标的情况下,去学习一些本职工作中可能用不到的知识,可能就有点“盲目”。这些知识学习的过程中也许不够高效。不高效的学习又遇到了别人高速的成长,一比较,新的焦虑又会产生。

这里我有切身的体会

当你一直投身一个项目且开发工作很饱和时,有时候你会对这个项目感到厌倦。相反,如果同时开发多个项目这有助于保持开发热情,如果你厌倦了其中一个项目,可以转到其他项目。这样,你将永远在前进,能够持续开发应用程序。

然而,同时进行多个项目最大的好处是你的成长速度很快。你有多种观点,多种思路、多种方式来解决问题,最主要的是能够获得很多动力。

学习永远没有错,错的是选择了低效耗时耗精力的前进方向 迷茫的来源有二个,一是看不到自己对公司的价值,二是看不到自己未来发展的路。

先说迷茫的来源一

看不到自身的价值。很多人每天在公司写业务,俗称“搬砖”,每天都搬,感觉一点长进都没有。回过头来看框架部门的人或者自己部门的研究员,每天都在研究或者做一些框架或者工具。当有大量的人使用的时候,就会很有成就感。并且认为业务没啥技术含量,业务里面的逻辑和流程在换了一家公司以后就没有任何优势了。这种想法其实是不对的,是错误的片面的。

再谈谈迷茫的来源二

看不到未来的路在何方。这个迷茫我觉得来自于对自身的定位不明确。一位老师和我说过,毕业后的头5年,你可以去选择各种开发,前端后端或者移动端,可以随便选。这是为了什么呢?就是为了找到自己感兴趣的和自己的长处并且打算一辈子一直做下去的方向。如果你还看不到自己未来发展的路,那么可以考虑把眼界放的更广一点,去找寻自己真正感兴趣的方向。所谓真正感兴趣的,是指如同熬夜打游戏一样毫不困倦,如果某个方向你能做到不是公司强迫你加班,自己写代码写到深夜或者通宵也毫不厌倦,那么这一定是你感兴趣的。方向一旦确定就不会迷茫,朝着目标狂奔吧。
在这里插入图片描述

那么接下来,问题就变成了“如何提升自己在 Android 市场上的竞争力”

提升通用技术能力

半衰期长的技术要打好基础,也就是更加通用的技术。

一来通用技术如数据结构和算法、计算机网络、操作系统、计算机系统结构等,对技术的深层理解有很大的帮助,二来这类技术在不同的语言和技术方向上切换时是共通的。

提升软实力

软实力实际上也是一项通用的技能,甚至比第一条更加通用。

良好的沟通可以缩短开会的时长、节省相互之间的沟通成本,也使得团队合作更加愉快。不错的文档表达能力可以省去不少的重复沟通。

懂得规划自己的时间,上班时能更有条不紊地完成任务,下班也能高效地规划业余时间的学习。

懂得反思:为什么这个任务预计五小时能完成,却变成了三天;为什么这个需求要这样做,这么做是最合理的吗,还有更好的方式吗?

对问题、业务和自身的更多思考有助于更好地发挥和展现你的技术实力。

选择一个细分领域不断深入

个人认为一个较好的学习方式是先优先广度遍历,即粗略了解自己领域的各方面知识,然后优先深度遍历,即选择一个自己感兴趣或者觉得值得深入的方向深挖下去,等到这个方向学习研究得差不多了,再去深入下一个方向的技术知识。例如:

插件化技术、响应式编程、组件化框架、系统架构等进阶技术,承托着业务之下的基础框架,能够使得开发者在面对需求和功能变化的时候有更快的反应和更优雅的行动。 业务逻辑日渐成熟的形势下,用户体验越来越重要,突然的软件崩溃或是加载图标持续5秒,对于高质量应用都是阻碍。渲染速度、网络请求体验、I/O优化、热修复技术、耗电优化,都是性能优化需要重视的点。 Android 现在细分的领域非常多,逆向安全、音视频、物联网、SDK开发等等,可以在这些领域中选择一个并不断深入。

若是从时代背景的角度考虑,当下Android开发深入学习Framework会是一个不错的选择。

其中会涉及到很多Android底层知识对于自身的进击和转行都很有帮助!

打破局面,深入学习!

我们不能只是唉声叹气,更不能坐以待毙,而应该想想如何在这个不好的环境中生存下去?想想以后的发展方向是什么?以后路在哪里?怎样走下去?怎样让自己更顺利的成长?

如果你从事Android开发,具备2年以上工作经验;如果你希望深入浅出了解Framework ,并渴望实现技术和职业成长上的双重突破,这里给大家分享一份福利,完全免费:

由于文档内容过多,因此为了避免影响到大家的阅读体验,在此只以截图展示部分内容,详细完整版的看文末有免费的获取方式!(文末还有使用ChatGPT机器人小福利哦!!大家不要错过)

《Android Framework源码开发揭秘》

本学习手册深入剖析了Android系统源代码,详细讲解了Android框架初始化过程及主要组件的工作原理,旨在通过实例和案例介绍 Android Framework 的核心概念和技术,从而帮助开发者更好地理解 Android 应用程序的设计和开发。 该手册适合具有一定 Android 应用开发经验的程序员,希望能通过深入学习 Android Framework 来帮助开发者更好地理解和掌握这一技术。

img

第一章 系统启动流程分析

Android系统完整的启动过程,从系统层次角度可分为 Linux 系统层、Android 系统服务层、Zygote进程模型三个阶段; 知识要点:

第一节 Android启动概括、

第二节 init.rc解析、

第三节 Zygote、

第四节 面试题

img

第二章 跨进程通信IPC解析

Binder作为Android进程间通信的机制,可以看做是一个驱动。在Android中,常见的进程间通信例如系统类的:打电话、闹钟等;自己创建的:像WebView、视频播放、音频播放、大图浏览等。

img

第三章 Handler源码解析

第一节 源码分析

第二节 难点问题

第三节Handler常问面试题

在这里插入图片描述

搭建了一个基于chatGPT的微信群聊机器人,24小时为大家解答疑难技术问题, 需要的可以扫描二维码进群。

图片

猜你喜欢

转载自blog.csdn.net/Android23333/article/details/131802882