移动端对比后端“式微”?在大环境下如何避免当生锈的螺丝钉 ...

3

主题

6

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2022-11-26 14:25:00 | 显示全部楼层
知乎提问:最近看到一些技术博客,说所有公司都意识到了,小程序相比传统的安卓/IOS/Web三线作战的优势。真实情况也是如此吗?
这个“式微”的理解其实可以有很多种解读,这里最直接的是Android在企业内的重要性对比后端确实是“式微”了!
但是这个“式微”和小程序没有太大关系,因为做过微信小程序的知道,微信内的限制太多,所以作为引流和试水阶段是没问题,但是落地还是要回归到自己的平台。
我见过不少产品是通过小程序和小游戏去试错,最后数据客观了才落地到应用项目,这类产品一般会选择类似 Taro 的框架进行开发,最后可以快速从小程序再迁移到应用。
毕竟小程序并不是“真正的平台”,在别人的后花园怎么能安心遛狗?


为什么说移动端对比后端“式微”了?

2014 年开始的移动红利之后,客户端急缺的情况下,客户端开发经历了 2015 - 2016 年的野蛮成长,但是 2020 的今天整个移动端社区都趋向稳定,而且第三方支持丰富,开发一款应用的成本降低了,而在稳定下来后企业积累了无数的用户和数据,所以下半场的竞争者必然是后端和大数据的竞争,主动权再次回归后端的比拼
介绍个简单的例子,比如极光 ,移动开发都知道它是做推送 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 等新的技术迭代。
当然,最后不要落下数据结构与算法、计算机原理等基础知识,这些才是程序员后期的竞争力,如果想要把握更多的当然你也可以学习后端开发相关的知识。
Android行情艰难如何成为一个优秀的程序员?

优秀的门槛一直在变高,岁月无情,那我们怎么应对?
1、尽量让自己拥有较长时间竞争力的技能和思想
现在很多年轻人热衷于学习新的工具,新的编程语言,学习在新的平台做系统,当然,这是有一定红利期的,但作为个人的竞争力,稍过几年,很可能就一文不值。
什么是竞争力,多理解系统底层的逻辑和思想,诸如内存分配的机制,多理解数据结构的原理和设计理念,这些也不能说永远都有竞争力,但如果理解到位,并且应用得当,至少可以保证二三十年自己的思想不会在业内落伍。
具有发现问题的敏锐度,掌握分析问题的方法和思路,也能让自己职场竞争力相对牢固一些。
知道如何有效的在复杂的系统中发现问题,定位问题,并针对性的给出解决问题的方向,这就是竞争力,这个竞争力,依然可以持续很多年。
2、即便力不从心,也要奋力向前
你说一代更比一代强,有的时候真的力不从心,但看你目标是什么,想独孤求败,一览众山小,可能越来越难。但毕竟!毕竟大部分人是懒惰,缺乏耐心的。想让自己超过大多数人,毕竟没那么难。
如果你否定天分的存在,只强调勤奋努力,那就是蠢。但如果你因此认为勤奋努力没有用,那就是又懒又蠢。
只要你肯进步,总会超越大量不进步的人。对于普通人来说,这就足够了。
3、提升视野,向上发展
很多人虽然经历了很多事,却依然没有见识,匮乏视野。
比如简单化,标签化的看待问题,老板当时成功是因为运气比较好。
比如从不关心产业和市场变化的情况,一直随波逐流。
比如在自己的工作职能之外,毫不关心合作伙伴,上下游,同行的生存和发展话题。
所以,当更有活力,更便宜的年轻人冲上来,他们的教育背景比你更好,他们的算法逻辑比你更清晰,你还剩下什么,信谣传谣的能力和素质?
还想安安静静当个螺丝钉?对不起,你生锈了。
总结一下,优秀的门槛越来越高,这是历史趋势,谁也挡不住。
但任何时代,大部分人总是会固步自封,随波逐流,随着岁数增长,你可能真的无法挡住优秀的年轻人超越你,但你只要肯进步,总会不断超越那些停步不前的大多数。
怎么学习Android

其实我更希望做无论是哪端的开发,都可以让自己的成长为工程师而不是单纯的 Api 码农,很多时候大家都在忧虑学多而不精,但是抚心自问学得少的自己,现在有“精”吗?
因为技术是具备可迁移性的,比如:学习 Dagger 和 Spring 的时候;学习 React Native 和 Flutter 的时候;学习 Kotlin 和 JavaScript 的时候。这样的选择可以让我们节约成本的过度。
在增加自己技术储备的同时,也开拓自己的眼界,我个人更希望自己的生涯是去 “精通” 开发,而不是定位于某种语言或框架。
所以我会保持去关注新的行业动态,了解一些新兴技术实现,即使只是知道它的名字和作用。危机感和兴趣让我有动力这么做,当然,在某个领域保持深度还是有必要的,毕竟吃饭的东西不能丢, 但是保持学习和好奇心,是让职业生涯更有生命力的保证:
同样地,每年我们都会看到,在一个新的技术发布后,曾经在某一领域具有权威的领导者失去他的领导地位,这正是因为日常工作占据了进行策略性思考的时间,从而让你没有时间去做一些更有价值的事。
Android进阶学习路线参考

程序员如何走上快速提升技术走上财富自由之路?
下面我提供一下我多年工作以来收集整理的学习路线,给大家做个参考:
这份笔记一共8大模块、729个知识点,3382页,66万字,可以说覆盖了当下Android开发最前沿的技术点以及阿里、腾讯、字节跳动这些大厂面试时最看重的技术。这里免费分享给大家
强调一下:【因篇幅问题:文中只放部分内容,全部文档需要的可找作者或个人简介获取。】


相对于我们平时看的碎片化内容,这份笔记的知识点更系统化,更容易理解和记忆,是严格按照知识体系编排的。
一、架构师筑基必备技能


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




二、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性能优化实战解析


  • 腾讯Bugly:对字符串匹配算法的一点理解
  • 爱奇艺:安卓APP崩溃捕获方案——xCrash
  • 字节跳动:深入理解Gradle框架之一:Plugin, Extension, buildSrc
  • 百度APP技术:Android H5首屏优化实践
  • 支付宝客户端架构解析:Android 客户端启动速度优化之「垃圾回收」
  • 携程:从智行 Android 项目看组件化架构实践
  • 网易新闻构建优化:如何让你的构建速度“势如闪电”?





四、高级kotlin强化实战

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

  • 从一个膜拜大神的 Demo 开始
  • Kotlin 写 Gradle 脚本是一种什么体验?
  • Kotlin 编程的三重境界
  • Kotlin 高阶函数
  • Kotlin 泛型
  • Kotlin 扩展
  • Kotlin 委托
  • 协程“不为人知”的调试技巧
  • 图解协程:suspend




五、Android高级UI开源框架进阶解密


  • 1.SmartRefreshLayout的使用
  • 2.Android之PullToRefresh控件源码解析
  • 3.Android-PullToRefresh下拉刷新库基本用法
  • 4.LoadSir-高效易用的加载反馈页管理框架
  • 5.Android通用LoadingView加载框架详解
  • 6.MPAndroidChart实现LineChart(折线图)
  • 7.hellocharts-android使用指南
  • 8.SmartTable使用指南
  • 9.开源项目android-uitableview介绍
  • 10.ExcelPanel 使用指南
  • 11.Android开源项目SlidingMenu深切解析
  • 12.MaterialDrawer使用指南



六、NDK模块开发


  • 1、NDK 模块开发
  • 2、JNI 模块
  • 3、Native 开发工具
  • 4、Linux 编程
  • 5、底层图片处理
  • 6、音视频开发
  • 7、机器学习


七、Flutter技术进阶


  • 1、Flutter跨平台开发概述
  • 2、Windows中Flutter开发环境搭建
  • 3、编写你的第一个Flutter APP
  • 4、Flutter开发环境搭建和调试
  • 5、Dart语法篇之基础语法(一)
  • 6、Dart语法篇之集合的使用与源码解析(二)
  • 7、Dart语法篇之集合操作符函数与源码分析(三) …



八、微信小程序开发


  • 1、小程序概述及入门
  • 2、小程序UI开发
  • 3、API操作
  • 4、购物商场项目实战
  • ……




全套视频资料:

一、面试合集


二、源码解析合集


三、开源框架合集


强调一下:【因篇幅问题:文中只放部分内容,全部文档需要的可找作者或个人简介获取。】
回复

举报 使用道具

3

主题

7

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 3 天前 | 显示全部楼层
我擦!我要沙发!
回复

举报 使用道具

您需要登录后才可以回帖 登录 | 立即注册
快速回复 返回顶部 返回列表