楼主现在 26 ,是个 5 年经验的 Android 客户端开发,无时无刻不在想着这个问题,有点迷茫,想请教一下大家。
![]() | 1 skyrim61 2023-06-06 18:02:24 +08:00 ![]() 这空荡荡的评论区, 已经能看出一些了 |
![]() | 2 b1iy 2023-06-06 18:14:05 +08:00 作为小菜鸟的我早早的选择多点大前端技能树 |
3 haha512 2023-06-06 19:04:25 +08:00 学学 flutter 和 swift ,加上已有的 android 技能, 轻松搞跨端啊 |
4 x77 2023-06-06 19:23:38 +08:00 见过一个号称 10+ 年的 Android 开发(只会 Android ),从当前后退 5 年的技术都不会,也没有一点概念,他怎么做“开发”工作呢。 举个简单的例子:Android 与服务器做心跳通讯,以实时同步一些状态。有几年经验都能做吧,正常点的开发都会想到最高效的做法是 UDP 通讯,次之 TCP ,而他的做法是上用 okHttp 定时与服务器通讯,相当于让运输公司发卡车帮他送个鸡蛋。 搞了 10+ 年连 Java 有符号和无符号数的变通使用都能把他卡住,还有啥“代码分析工具是检查有没有注释”等等无数惊人认知。。。 然后我告诉你他怎么工作,技能全点“儒家文化”,搞关系,技术问题装萌卖乖解决。真人真事没有夸大,不想搞技术又入了这个行当,迷茫时或许可以借鉴一下。 |
5 8eacekeep 2023-06-06 19:25:23 +08:00 转 php |
6 superedlimited 2023-06-06 19:28:23 +08:00 via iPhone 做 ai |
![]() | 8 jack778 2023-06-06 19:38:46 +08:00 ![]() @x77 假如服务端就是 web 端 http 服务器, 用 okhttp 没啥毛病呀, 难道还要服务端特地给你加一个 udp 通信模块吗 |
![]() | 9 3144838718 2023-06-06 19:39:43 +08:00 加油,你还有 9 年时间 |
![]() | 10 dudubaba 2023-06-06 19:44:43 +08:00 会 web 前端应该会吃香,多端还是有需求的。 |
11 x77 2023-06-06 21:17:01 +08:00 @jack778 如果 1 秒一次呢,okhttp 是比较重型的库,你还觉得不是问题吗。我也不知道他为啥不用轻量级库,可能他不知道有没有,不知道怎么评估。 |
13 zpxshl 2023-06-06 21:44:16 +08:00 via Android @x77 他用 okhttp 发心跳,会影响他的产出,收益吗。 换个方法问,如果他用更好的实现,会因此得到领导的赏识,加工资吗。 |
![]() | 14 crysislinux 2023-06-06 21:49:10 +08:00 心跳为啥要一秒一次。又不是搞游戏,半分钟一次都够了。 |
![]() | 15 BigDogWang 2023-06-06 21:57:12 +08:00 转嵌入式 |
![]() | 16 BigDogWang 2023-06-06 21:59:22 +08:00 ![]() 别的不说,心跳这个吐槽并不认可。这东西是一个整体方案,怎么能让安卓一个人背锅呢 |
![]() | 17 whyrookie 2023-06-06 22:02:51 +08:00 同 Android ,最近在看前端的知识,Java crud 也会点。 |
![]() | 18 whyrookie 2023-06-06 22:03:55 +08:00 ![]() @BigDogWang 确实是的,而且心跳感觉更应该是后端来主导技术选型。 |
![]() | 19 xFrye 2023-06-06 22:06:52 +08:00 用 okhttp 也不是不行吧,本身就支持 websocket |
![]() | 20 springz 2023-06-06 22:09:34 +08:00 现在都 http2 http3 了,重毛线啊。简单的状态同步啥的我也喜欢直接定时器 POST 。 |
21 FranzKafka95 2023-06-06 22:11:21 +08:00 via Android ROM 原生定制,别只停留于 Application ,往 Framework/HAL/BSP/Kernel 走 |
23 x77 2023-06-06 22:18:29 +08:00 @BigDogWang 抛开 okhttp 做心跳衍生出来的耗电、占内存(虽然对手机没太大影响,总之设计不科学)不讲,用 http 协议 1 秒一次的心跳肯定是不可行,除了心跳还有别的通讯,现实网络环境没法支持这么高频率的 http 通讯,所以整个设计其实是有问题的。 为啥让 Android 一个人背锅呢,其实没有,我觉得主要问题还是有经验有技术能力的人没有做好,应该站出来改变这个局面,不要被一些阿猫阿狗挡住。 |
27 bage2020 2023-06-07 08:19:15 +08:00 都没毛病 |
![]() | 28 ChenSino 2023-06-07 09:08:12 +08:00 我有一个华科同学,8 年安卓最近在转后台 |
![]() | 29 ezXE2V 2023-06-07 09:25:40 +08:00 Android framework 方向怎么样,感觉就业方向比较窄,招聘网站上看只有手机厂和新能源汽车厂有岗位。。。 |
![]() | 31 silencelixing OP @EthanZhuXE2V 就业面是太窄了,并且这东西不好入门,再加上这个东西确实不是我想写的东西,我想写看得见的,感觉只有往前端方向走了。 |
![]() | 32 silencelixing OP @ChenSino 好,但是后台我实在是不想写,要转我就转前端去 |
![]() | 33 GavinHua 2023-06-07 09:41:30 +08:00 ![]() 4 年前转的后端开发,现在还行。 |
![]() | 36 ww940521 2023-06-07 09:50:49 +08:00 学学 Compose 搞多平台,学学 Rust 搞 native 。 |
![]() | 38 iovekkk 2023-06-07 10:01:38 +08:00 搞车载吧 也幸亏有了车载行业 Android 的处境还是比 iOS 好一点 |
39 deng81416754 2023-06-07 10:09:51 +08:00 只会一门应用层开发是没有出路的。it 民工跟不上时代进步就要被淘汰,我现在是前端也搞,安卓也搞,哪里需要去哪里的地步了 ,java 后端可能是个不错的选择吧 |
![]() | 40 sankemao 2023-06-07 10:10:53 +08:00 我是两年前转前端了 |
![]() | 41 Parva 2023-06-07 10:19:29 +08:00 毕业两年来同 op 一样困扰,安卓 49 年入国军。 现打算 all in Flutter ,救命稻草,望借此再多苟延残喘几年。 往远了想,移动开发干下去到头也只能当个大前端的组长然后部门经理,更高职位可能需要懂得全栈。 所以接下来几年还得找其它出路(希望 XR 产业啥的赶紧火起来给多点活路) |
42 zzghyfffx 2023-06-07 11:58:59 +08:00 虽然是问 Android ,但是也不仅限 Android 。 如果还是停留在问常用可以搜索到框架层面,后续还是没有什么竞争能力, 我觉得 可以从当前的项目中或者业务场景去深挖,围绕降本增效去思考,AI 能力(深度识别) flutter 动态化,开发发布流水,全量埋点,内存探针。 培养围绕移动端但可以给上下游赋能,让视野更宽阔,试炼场场景更多。 看到过一句话:有能力的人 都需要复杂的场景历练。千锤百炼。 后面是我的话:如果没有场景,那就慢慢挖自己做的项目去创造。 |
![]() | 44 hyyou2010 2023-06-07 12:48:04 +08:00 最佳是转 js 栈,次之 spring |
![]() | 45 jack778 2023-06-07 13:28:34 +08:00 大部分中小项目,性能并不是优先级最高的考量,最高级别的应该是交付质量,系统稳定性,开发成本和周期,不过这些都要站在更高视角去考虑,站在程序员的角度, 可以暂时用性能不是最优的方案, 但是你必须要知道如果要求更高的性能,应该怎么去改造. |
46 miKaSaAkerMan 2023-06-07 14:05:32 +08:00 比我们 iOS 路还是宽一些的 |
![]() | 48 bigjack 2023-06-07 14:10:05 +08:00 单独只会一项技能不好混了现在,对前端感兴趣可以涉猎一些前端、小程序、跨平台的技术,如果对后端感兴趣也可以学学 Java 后端开发、go 后端开发什么的,现在这种情况单独一种技能很难生存了 |
![]() | 49 mrzx 2023-06-07 14:29:14 +08:00 是微信小程序抢了你们生意了吗? |
![]() | 50 mengdodo 2023-06-07 14:58:38 +08:00 巧了,我正在下载 xcode ,打算看看 swift 语法,另外,我是个后端仔 |
![]() | 51 lakehylia 2023-06-07 15:01:24 +08:00 去车机部门,现在车机基本都是安卓 |
![]() | 52 ldlywt 2023-06-07 15:05:05 +08:00 2023 年及以后, 后台开发的出路在哪里? |
![]() | 53 ldlywt 2023-06-07 15:05:18 +08:00 2023 年及以后,IOS 开发的出路在哪里? |
![]() | 54 loshine1992 2023-06-07 15:17:16 +08:00 |
55 devHang 2023-06-07 15:18:55 +08:00 看到安卓都这么焦虑,做 iOS 的我,更焦虑了 |
![]() | 56 AreYou0k 2023-06-07 15:19:58 +08:00 转后端 Java, 千万不要来前端 |
![]() | 57 hhjswf 2023-06-07 15:40:55 +08:00 说起来好像之前某个同事也是 http 做心跳,后端 springboot ,发 udp 心跳包好像不是很好搞,得整合 netty 了 |
![]() | 58 isno 2023-06-07 15:42:38 +08:00 |
![]() | 59 coolmint 2023-06-07 15:48:50 +08:00 我也是多年安卓,但已经做了两年的 flutter ,现在是 vue 了,公司项目需要啥技术我就上啥,学起来也没啥太大难度感觉。 自己还一直想用 SwiftUI 做个 app ,完后被 CoreData 卡住就进行不下去了,哈哈哈哈哈,卡到尼玛 WWDC 上 SwiftData 都发布了,准备换到新技术上继续干! |
60 kile 2023-06-07 15:50:36 +08:00 心跳这个不认同是客户端来背 我已经碰到多次不同人同后端 springboot 时候他们直接用 http 来心跳了 估计和楼上说的一样,javaer 得重新搞一套 udp 嫌麻烦也担忧不稳定吧... |
![]() | 61 fason1995 2023-06-07 15:58:01 +08:00 只会皮毛肯定不行的,但原生开发肯定不会倒,关键得精吧,现在简单的渲染、展示,都让前端搞了,原生基本都是做高性能的、底层的、协议相关,这些一般的开发水平接触不到也搞不定,举个例子:大前端搞安卓,有些功能无法做,就需要原生开发来开发插件或者提供暴露 api |
![]() | 63 sherblue 2023-06-07 16:16:38 +08:00 看到做 Android 这么焦虑,做 iOS 并兼职 Android 的我更焦虑了。 |
64 Masoud2023 2023-06-07 16:44:16 +08:00 抛开 okhttp 不讲,我觉得用 http 做心跳这个问题上还是得看具体公司技术栈,要是大部分人没有这种 TCP 层面的实施经验,我觉得 HTTP 也没啥,不然做出来的东西质量没法保证。 |
65 Masoud2023 2023-06-07 16:45:06 +08:00 你要是真考虑耗电不耗电这种东西,我觉得就不应该去做 1 秒发一次心跳这种事情了。 |
![]() | 66 clockwork1122 2023-06-07 17:04:55 +08:00 最近刚好有个移动端控制 usb 串口的需求没办法通过小程序实现,准备学着做安卓 |
67 selfi 2023-06-07 17:09:45 +08:00 转啥方向都卷, |
69 macha 2023-06-07 17:38:59 +08:00 移动端都这么卷,看看 Windows 平台开发,都快后继无人了。 |
70 MushiUta 2023-06-07 17:41:34 +08:00 单纯从 Android 原生来说的话,前两年去车企做车机是个出路。 可是我嫌工厂太远把 offer 拒了( QAQ |
71 githmb 2023-06-07 17:43:17 +08:00 只要不学,后面会变简单。你看现在学的话,Kotlin 、Compose 多爽 |
![]() | 72 SekiBetu 2023-06-07 22:55:57 +08:00 @AreYou0k 后端 Java 已经同质化严重,被 AI 取代指日可待,功能都是同质化类似的,一套好的代码可以无限拿来抄 |
![]() | 73 GavinHua 2023-06-09 12:01:21 +08:00 @whyrookie #37 怎么说呢,之前涉猎的也比较多,然后跟这家老板也有一定的信任基础,过来后适应了一下就做起来了。 |
74 guilai445 2023-06-10 19:07:25 +08:00 @githmb 其实要是工作业务不需要确实不需要深入,该深入的还是底层和架构知识,主要是在于通过学习解决问题的过程,上层知识要知道了解先建立一个 index ,以后有项目需要,建立项目需要用什么前端技术直接用就行,出什么问题解决什么问题。 |
![]() | 76 andye 2023-06-21 17:14:05 +08:00 转行做产品经理吧 |
77 forgottencoast 2024-03-27 22:18:22 +08:00 @zpxshl 他就不用在论坛上感慨出路在哪里了。 |