现在感觉Android职业前景不太好,想转java?

283 阅读8分钟

前言

屏幕截图 2023-03-22 111017.png 近几年相信很多Android开发者都有过这种想法,最终还是有些Android 开发选择了转行,但是还有些开发者选择了坚持。

因为现在Android开发确实竞争很大,很多公司抛出几个岗位,每天能收到成百上千的简历。说实话这些简历能让招聘者停留5秒以上的都很少,有些三到五年的开发者还可以走捷径,通过内推等形式进入公司。

所以剩余的这几百人成天都在说工作难找,Android开发进入寒冬了。这也是初级开发人员数量和企业需求极其不平衡。

转行还是坚守

我觉得吧,首先抛开其他因素,就拿人云亦云来说,在当下这个互联网时代,很多技术一下子就火起来了,这个时候匹配的岗位需求肯定也多了,难道每次都想着换方向,转岗?

显然这个是不对的,这些火热的技术发展都会趋于平缓。如果还是思路不变,那么就会永远的原地踏步。

Java作为一种广泛使用的编程语言,拥有庞大的开发者社区和丰富的应用生态。Java后端开发在企业级应用、大数据处理、分布式系统等领域具有广泛的应用前景。如果你对Java后端开发感兴趣,并且具备一定的编程基础和学习能力,那么转向Java后端开发可能是一个不错的选择。

然而,值得注意的是,转行并不意味着一定会取得成功。在你决定转行之前,需要充分了解Java后端开发的工作内容、技能要求以及市场需求。此外,你还需要投入时间和精力去学习新的知识和技能,以便更好地适应新的工作环境。

转行,就是抛弃自己现有的基础,重新开始!身边也有不少Android开发的小伙伴转行Java,但是他们对于目前的市场还是过于乐观,Java市场竞争不大吗?从0开始的你,甚至连应届生都比不过……

所以,对于有Android开发经验的同学,更多应该想想怎么往深探索,而不是一味想着换方向,不管换到哪个方向,都会面对从初级到高级到资深再到专家的时间点。所以我认为正确的职业规划应该是金字塔形,核心竞争力一定要扎实!

最重要的是一个人的态度、学习能力、沟通能力和团队合作能力等都会对职业发展产生影响。即使在同一个行业,不同的人也可能取得截然不同的成果。因此,在考虑是否转行时,不仅要关注行业的发展趋势,还要关注自己的兴趣、能力和职业规划。

并不是只有Android转java,也有java转Android的。

Android程序员的发展空间有多大?

这个数据是不好估量的,而且也是无法具体形容的。我们只能通过程序员的职位和晋升空间,以及程序员的薪资水平来判断他们的发展空间有多大。当然这些也都是按照程序员的个人能力来看的。

据有关资料来看,Android程序员的发展主要是三个大的阶段:

第一阶段

由初级工程师发展为中级工程师,在这个阶段程序员的知识水平和专业技能将会有很大的提升,薪资待遇也会由原来的年薪5-10w上升为12-20w。

第二阶段

由中级工程师发展为高级工程师,这个阶段程序员积攒了大量的资本和大量的人脉,很多Android程序员可能会选择创业,但是大部分会选择继续深造。薪资待遇也由原来的15-20w上升到20-35w。

第三阶段

由高级工程师转为技术专家或者架构师,往CTO(首席技术官)的方向发展,薪资水平由原来的20-35w上升到50-200w。

Android 开发者该如何进阶?

作为Android 开发者,该怎样规划自己的学习路线,然后一步一个脚印的向中高级进阶呢?下面给大家梳理一下:

一、Java基础

1 . 面向对象的三大特性 2 . 程序设计的6大原则 3 . 设计模式 4 . Java 字符串相关 5 . Java 线程池 6 . Java 集合 7 . Java 内存模型

二、Android 基础

1 . Android 四大组件 2 . Android 常用的几种布局 3 . Android Studio 4 . Fragment 5 . 数据库相关 6 . 常用控件基础控件

三、Android 进阶

  1. View
  2. App 的几种架构:MVC、MVP、MVVM
  3. Android 动画
  4. Material Design 系列
  5. Android 多媒体、Android视频开发
  6. Git
  7. Android 权限适配
  8. Gradle

四、学习了解开源库

1.热修复设计 2.插件化框架设计 3.组件化框架设计 4.图片加载框架 5.网络访问框架设计 6.RXJava 响应式编程框架设计 7.IOC 架构设计 8.Android 架构组件

五、收集自己的工具类库

你现在就可以看看你所做的项目,里面是不是有一个 utils 包 ?不用看了,肯定有,里面有你使用的各种各样的工具类。

也许你会跟我有同样的感觉,一些常用的操作如,读写文件、Bitmap转换、日期格式化等等。当我们使用的时候,我们很难一下子就将它写出来,我们可能会记得以前有个项目使用过,然后去翻以前的项目,有的可能去 google 下,拷贝一段代码。

这些都是比较常用的功能,并且代码相对固定,我们可以将我们平时使用的工具类收集到一个单独的类库中。然后将其分好类:

1.文件操作相关 FileUtils 2.Bitmap 操作相关 BitmapUtils 3.日期格式化相关 DateUtils

上面只是举了三个例子,所有的工具类都可以收集。

当你工作3年或者5年之后,你再来看一看这个库,或许就会不一样了。

六、学会思考和总结

当我们学习一个功能或者解决一个问题的时候,我们可以把整个过程梳理总结一下,如果我们学习了或者解决问题之后不做思考和总结,那么过一段时间或许就全部忘了。好记性不如烂笔头,梳理一下,记一个笔记或者写一篇博文。这样做有很多好处:

1, 有利于加深我们的记忆。 2, 脉络梳理清楚了,有助于我们更深刻的理解。 3,就算以后忘记了,再来翻一下自己的笔记或者博客,再看一遍,就又想起来了。 4 ,还可以帮助其他人,避免遇到相同的问题。

当我们做完一个项目的时候,留给自己一些时间做一些梳理和总结吧,如果你还没有这样的习惯,那么就从现在开始吧!总之,形成自己的知识体系很重要。

七、最后

本文梳理了Android 开发者进阶过程学习的一些知识点和一些我个人的建议。做为一名Android开发者,我想分享给大家自己对于技术一些归纳和总结,制成了完整版的学习手册,希望能帮助到有心在技术这条道路上一路走到黑的朋友!

由于文章内容比较多,篇幅有限,已经被整理成了PDF指南

详细Vx关注公众号:Android老皮

目录

img

一、架构师筑基必备技能

1.深入理解Java泛型 2.注解深入浅出 3.并发编程 4.数据传输与序列化 5.Java虚拟机原理 6.高效IO ……img

二、Android百大框架源码解析

1.Retrofit 2.0源码解析 2.Okhttp3源码解析 3.ButterKnife源码解析 4.MPAndroidChart 源码解析 5.Glide源码解析 6.Leakcanary 源码解析 7.Universal-lmage-Loader源码解析 8.EventBus 3.0源码解析 9.zxing源码分析 10.Picasso源码解析 11.LottieAndroid使用详解及源码解析 12.Fresco 源码分析——图片加载流程

三、Android性能优化实战解析

1.腾讯Bugly:对字符串匹配算法的一点理解

2.爱奇艺:安卓APP崩溃捕获方案——xCrash

3.字节跳动:深入理解Gradle框架之一:Plugin, Extension, buildSrc

4.百度APP技术:Android H5首屏优化实践

5.支付宝客户端架构解析:Android 客户端启动速度优化之「垃圾回收」

6.携程:从智行 Android 项目看组件化架构实践

7.网易新闻构建优化:如何让你的构建速度“势如闪电”?

)]

四、高级kotlin强化实战

1.Kotlin入门教程 2.Kotlin 实战避坑指南 3.项目实战《Kotlin Jetpack 实战》

            ● 从一个膜拜大神的 Demo 开始
​
            ● Kotlin 写 Gradle 脚本是一种什么体验?
​
            ● Kotlin 编程的三重境界
​
            ● Kotlin 高阶函数
​
            ● Kotlin 泛型
​
            ● Kotlin 扩展
​
            ● Kotlin 委托
​
            ● 协程“不为人知”的调试技巧
​
            ● 图解协程:suspend![img](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/d5f47f648b95477698a42dc9d1b6bd3f~tplv-k3u1fbpfcp-zoom-1.image)