我见过不少产品是通过小程序和小游戏去试错,最后数据客观了才落地到应用项目,这类产品一般会选择类似 Taro 的框架进行开发,最后可以快速从小程序再迁移到应用。
毕竟小程序并不是“真正的平台”,在别人的后花园怎么能安心遛狗?
为什么说移动端对比后端“式微”了?
2015 年开始的移动红利之后,客户端急缺的情况下,客户端开发经历了 2016 - 2017 年的野蛮成长,但是 2021 的今天整个移动端社区都趋向稳定,而且第三方支持丰富,开发一款应用的成本降低了,而在稳定下来后企业积累了无数的用户和数据,所以下半场的竞争者必然是后端和大数据的竞争,主动权再次回归后端的比拼。
介绍个简单的例子,比如极光 ,移动开发都知道它是做推送 SDK 起家,后续增加了如
分享
、统计
、IM
等 SDK 也是布局移动服务,但是 2019 开始极光开始主打推出的iAPP
、反欺诈
、iAduience
、iZone
、营销平台
等都是开始往数据服务上发力;另外和极光属于竞争对手的 MobTech 也是这样的套路。
因为开发一个普通应用的难度下降了,门槛降低和资本冷却以后,把握数据和业务逻辑的开发开始成为新的门槛和香饽饽,所以最直观的就是文章和技术分享的趋势变了。
一部分从 Java Web 到 Android 的开发人员又一次回归后端,同时培训机构的风头也变了:python、AI、区块链等等,要知道每年市面上新增的开发人员,有很大一部分来源于培训机构,这部分人变了也导致技术博客和公众号等的产出风向变了。
移动端开发需要怎么增强自己的式?
首先明确一个观点,那就是移动开发是必须有的,只要平台在原生开发就必须有。但是浑水摸鱼的日子没有以前那么好过了,因为小程序和各种跨平台开发让企业有了更多的选择。
如果你还想做界面开发,那么增强你的能力广度是必须的。例如:
-
小程序的上手并不难,同时还有诸如
uni-app
、taro
、chameleon
可以帮助上手。 -
通过学习
React-Native
来认识前端开发,学习React
、CSS
、JavaScript
等相关能力,只要你会RN
其实等同于你已经学会了小程序。 -
了解学习诸如
Flutter
、PWA
、WebAssembly
等新的技术迭代。
当然,最后不要落下数据结构与算法、计算机原理等基础知识,这些才是程序员后期的竞争力,如果想要把握更多的当然你也可以学习后端开发相关的知识。
怎么学习
其实我更希望做无论是哪端的开发,都可以让自己的成长为工程师而不是单纯的 Api 码农,很多时候大家都在忧虑学多而不精,但是扪心自问学得如此这般的自己,现在有“精”吗?
因为技术是具备可迁移性的,比如:学习 Dagger
和 Spring
的时候;学习 React Native
和 Flutter
的时候;学习 Kotlin
和 JavaScript
的时候。这样的选择可以让我们节约成本的过度。
在增加自己技术储备的同时,也开拓自己的眼界,我个人更希望自己的生涯是去 “精通” 开发,而不是定位于某种语言或框架, 在《能力陷阱》 一书里提过:
“我们很乐于去做那些我们擅长的事,于是就会一直去做,最终就使得我们会一直擅长那些事。做得越多,就越擅长,越擅长就越愿意去做。这样的一个循环能让我们在这方面获得更多的经验。而它就像是毒品一样,我们被它深深吸引,因为我们的快乐和自信都来源于它。它还会让我们产生误区,让我们相信我们擅长的事就是最有价值的且最重要的事,所以值得我们花时间去做。” ——《能力陷阱》
所以我会保持去关注新的行业动态,了解一些新兴技术实现,即使只是知道它的名字和作用。危机感和兴趣让我有动力这么做,当然,在某个领域保持深度还是有必要的,毕竟吃饭的东西不能丢, 但是保持学习和好奇心,是让职业生涯更有生命力的保证:
“同样地,每年我们都会看到,在一个新的技术发布后,曾经在某一领域具有权威的领导者失去他的领导地位,这正是因为日常工作占据了进行策略性思考的时间,从而让你没有时间去做一些更有价值的事。” ——《能力陷阱》
其实你没有你想象中的那么有能力,这是实话,你只能说你在现有的阶段有深入了解某一项技术的能力。不过这也够你温饱了!
移动端技术提升
=======
技术更新迭代只会越来越快,相应的开发者增多,以前一些没有办法被更改的问题将会一一被修复,新的技术方法将一一被发现,所以你必须要更深层次地去了解技术的原理,知其然更要知其所以然。
当然,你如果只想要靠Android开发混一口饭吃,我相信在未来十年,在现有的基础上,你不会饿死,但也只能是这样了。
退一万步说,时代红利摆在眼前,如若不去珍惜,那和咸鱼有什么区别? 干一行爱一行,你现在一切的努力在将来都不会辜负你。一起努力吧