ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Android-开发者的下半场该如何打下去,层层深入

2021-09-06 12:58:58  阅读:174  来源: 互联网

标签:5.0 APP 面试 开发 互联网 开发者 下半场 Android


也就是这个时候,小米横空出世,让 Android 市场开启了千元机的时代,我们应该感谢小米、华为让我们大多数人快速上手智能手机。这一年,国内一大批 JavaEE 开发者开始转 Android 开发了,我就是其中的一员,此时开发手段也是比较原始的,比如网络框架,基本都是在 HttpClient 或 HttpUrlConnection 上手动封装, 大家都在干重复的活,程序员最不愿意干重复的活,后来才有了 AndroidAsyhcHttp、Volley、Ritrofit……

2012 年,Android 相序推出了 Android 3.x 和 Android 4.x ;3.x 主要用于平板设备,这个时候 Android 程序员开始认识 Fragments,一种为大屏而生的视图,如今被你我他用得很频繁;4.x 在流程度和易用性上做了几次优化,例如动画绘制二级缓冲升到三级缓冲。

到这个时候国内 Android 开发已经是火得一塌糊涂,学过 Java ,不管你有没有 Android 经验,只要你愿意从事 Android 开发就能找到待遇不错的工作;整个行业一片欣欣向荣,随便一家互联网公司,不做两个 App 都不好意思说自己是互联网公司。

那些做渠道、市场的也是豪赚了一把,比如 91、豌豆荚。也酝酿出了第一批 APP ,比如当时我们手机装得最多的就是 QQ 、微信、360助手、搜狗输入法、百度地图、UC浏览器、天天动听、优化大师、墨迹天气。看到没有,大多数都是工具属性,还谈不上改变生活,还没有滴滴打车、还没有各种 O2O 应用、微信也只是单纯的聊天工具。

大家都看到了移动互联网即将进入生活的方方面面的趋势了, 还有好多 APP 要开发,从零到一的开发一款 APP 的机会一大把, 还需要好多 Android 开发者入局干事情。

问题与解决

2013 年到 2014 年这两年 google 相序发布了 4.4 和 5.0,前面讲过,早期的 Android 就是初生的婴孩,安全、性能都存在问题。

比如 2012 年,有人让我写程序监听别人的电话、短信,居然轻而易举地就能实现这个功能,可见安全漏洞是多么明显,然而在4.4、5.0 上就难了,在后面的 6.x、7.x 就更难了。

在性能方面,我觉得 4.4 和 5.0 具有划时代的意义,4.4 开始 google 开始引入 ART 虚拟机准备代替 Davik 虚拟机, 5.0 以后,在摩尔定律的作用下, 手机硬件性能、内存也上来了, 彻底废弃了 Davik, 完全使用 ART 。

为啥 ART 之后为速度就快了?这里我简单解释一点, 了解 JVM 的应该比较好理解, Java 字节码需要通过 JVM 解释成目标 CPU 可执行的指令集, 这也是 Java 运行速度慢的原因, 后来出现了 JIT 编译, 对经常执行的热区代码做一次解释,解释成对应目标 CPU 指令集, 放到内存中, 下一次执行的时候就直接从内存中取出这部分 CUP 指令直接执行, 省去了每次都解释执行的耗时。

Davik 也是有 JIT 特性的, 不过还不够好;能不能再安装的时候就提前把要解释的字节码翻译好? 内存允许的话,答案是肯定的, ART 上面就这么干的, 这种方式叫做 AOT,即提前编译。所以我们会发现 5.0 以后安装程序会比较慢, 但运行速度快了太多, 5.0 以后 Android 和 iOS 的差距越来越小了。

时势造英雄

2013 年到 2014 这两年,移动互联网进入了新一轮的爆发式增长,真正把草莽丛生、野蛮生长演绎到了极致。

记得我在《一个程序员的运气》这篇文章中讲过一个故事:一个在 2010 年底还在白石洲和我同学一起住农民房、挤公交的师兄,2014 年的时候已经是身价千万的副总了; 同一年,另一个公司的年终时候在楼下摆满了奥迪作为年终奖,它就是 UC。

经过两三年的疯狂发展,生活的方方面面都可以在手机上进行了,各种 o2o 应用打得不可开交,打的不用再去马路边等着、超市到路边摊都不再需要掏现金、外卖随叫随到,移动互联网真正改变了人民的生活方式……

这个时候整个行业需要从零到一开发 APP 机会少了很多了,到 2015 年的时候很多创业公司第一步想到的不是要开发一个 APP ,而是先开一个微信公众号。

这个时候 APP 端的开发模式也慢慢在发生变化,各种动画开源库、网络开源库不说,原生开发已经相当成熟了,热更新插件化开发也初出锋芒,摩尔定律的作用下,硬件性能上来了,H5 也越来越多的分担了页面任务,Android 开发进入混合开发时代。

提高效率、解放双手是人类永恒的追求,程序员的理想就是要干到自己“没活干”。

2015 年底 facebook 推出 React Native,跨平台、动态性和性能达到双平衡,我也第一时间研究并写了 demo,发现上手也快,这种 web 化的开发方式、原生化的体验一定是趋势,js 再次发光发热。

渐趋成熟的Android

写到这里,我在标题上顿了下,一开始的小标题是“减去成熟的市场”,后面我想了下,改成了“渐趋成熟的Android”。

为什么不用市场呢?因为怕大家又开始焦虑,又开始误会,担心Android凉了,担心自己凉了。

2016 年插件化框架彻底成熟,没过多久,阿里的 Weex 发布,和 RN 如出一辙,Android 开发彻底进入混合时代,这个时后对端的架构能力是有要求的,你要考虑你的应用是不真的需要组件化,如果需要,又怎么把组件、业务插件、Web 容器、统跳协议等有效结合。

2007 微信小程序面市,跟着文档这个 Demo 轻而易举,站在创业者的角度,你还会花这么多成本去开发一个原生的 App 吗?而且这个时候各个领域、细分领域刮分已经完成,开发新 App 的机会真的没有多少了。

如今小程序自己形成气候,各家 App 都想仗着平台和流量做自己的航母,都要做自己的小程序,真是畸形,从统一的角度看,我还是希望快应用能成。不过事实证明,我的期望落空了,现在大家都知道小程序,却很少有人听说“快应用”。

随着 RN、Weex、小程序等前端技术的出现,技术发展又完成了一个轮回,在摩尔定律作用下,历史是如此的相似。还记得那个曾经差点要了微软命的浏览器公司吗,你操作系统很牛逼,但是流量入口都在我这,微软也感觉到了不妙,后来才出现了 IE 浏览器。

IE 浏览器出现后微软内部也开始了系统派和浏览器派两个派系旷日持久的斗争,最终系统派获胜了,不知道这是不是后来微软在新互联网时代衰败的原因!移动互联网和PC互联网的发展轨迹太像了,只不过移动互联网是螺旋上升的一个轮回,2008 年到现在,又是十年多一点,差不多十年一轮回。

下半场出力方向

下半场我们的战场在哪里?

下面这些点是我总结出来的当下最重要也是最热门的学习方向:

1.Java基础:虽然Kotlin现在是 Android 开发的首选语言,但是底层还是要熟悉Java的,如果想要更加的深入底层,还有C,C+这些。

2.App开发框架知识体系:Activity相关实体知识体系,Fragment 内核,Service 内核原理,实体间的通信方案等。

3.Android app全方位性能调优:代码框架结构优化,用户体验及资源消耗优化,屏幕适配,代码质量调优等。

4.Android前沿技术:热升级,热修复等。

结尾

好了,今天的分享就到这里,如果你对在面试中遇到的问题,或者刚毕业及工作几年迷茫不知道该如何准备面试并突破现状提升自己,对于自己的未来还不够了解不知道给如何规划,可以来看看同行们都是如何突破现状,怎么学习的,来吸收他们的面试以及工作经验完善自己的之后的面试计划及职业规划。

CodeChina开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》

这里放上一部分我工作以来以及参与过的大大小小的面试收集总结出来的一套进阶学习的视频及面试专题资料包,主要还是希望大家在如今大环境不好的情况下面试能够顺利一点,希望可以帮助到大家~

*,主要还是希望大家在如今大环境不好的情况下面试能够顺利一点,希望可以帮助到大家~

[外链图片转存中…(img-2SVzXyrl-1630903366439)]

标签:5.0,APP,面试,开发,互联网,开发者,下半场,Android
来源: https://blog.csdn.net/m0_61072670/article/details/120131718

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有