原生Android开发的路该怎么走?面试总结

Posted Java德克士

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原生Android开发的路该怎么走?面试总结相关的知识,希望对你有一定的参考价值。

android开发的现状

目前,移动开发已经处于饱和的阶段,Android开发也不如当年盛况,已经不再像前几年前那么火爆。正如一种编程语言如果经历过盛极一时,那么必然有这样的一条曲线,像我们学的正弦曲线先急速上升,然后到达顶点,然后再下降,最后再趋近一个平稳的值。
可以看到,从2016年的下半年开始,移动互联网基本处于缓慢发展的阶段,很多大佬称之为互联网的下半场。如果移动互联网的前半场是粗放式的强地盘阶段,那么下半场就是守地盘的阶段,这一阶段,会出现众多的寡头。
在技术上,相比之前之前面试只问Android四大组件,数据库,网络和项目经验不同,现在面试Android岗位会设计各种原理(包括系统的一些原理以及第三方库的原理及流程)、Android优化以及与Android相关的跨平台技术。除此之外,稍微大点的公司还会对App的用户体验、流畅度等等提出要求,所以说,Android的面试已经不可同日而语。

在这个知识膨胀的时代,每天面对铺面而来的海量信息,我们的学习也不再是按照以往传统的学习模式了,更重要的是我们要进行科学学习,什么是学习?学会学习才是根本,如何学会学习,那就要讲求方法了,我们经常看到一些学霸等传奇人物,听他们的经历,学他们的方法,路有千千万,但是你想过没有,也许适合你走的只有一条而已,所以,别人的不一定适合你,适合自己的才是最好的,但是学习效果不佳的原因却大致有以下几个:

  1. 没有正向反馈(学习到什么程度自己心里没数)
  2. 学习方法不对(用错误的方式去学习)
  3. 知识不成体系(学的知识很杂,东一块西一块)
  4. 有效时间不多(感觉每有多余的时间用在学习上)

关于“没有正向反馈”

这应该很好理解,这里的没有正向反馈指的就是我们在学习的过程中并不能看到感受到因学习而真正给我们带来有什么不一样的东西,哪怕是一种感觉,又或者是物质上的东西,总之,这是能够让我从内心觉得“学习真好”,可是我们往往却很少遇到。我们总是希望付出了就能立马看到收获的,一旦达不到自己的期望,我们也就失去了激情,甚至开始抱怨,自然学习效率就会下降,所以学习中,我们一定要对正向反馈加以重视,这里说几点关于我学习中用到的正向反馈吧!

  • 我学习编程有写博客的习惯,当我刚写完一篇博客的时候会有点小小成就感,随后我会发给我认识的一些前辈,很多都给予了肯定,哪怕是鼓励我我也高兴!

  • 有的时候我也会给一些大牛投稿,一旦被采用,那种心情是相当的说不出口的(太高兴了)

  • 在专业上我会帮别人解答一些问题或者分享一些知识等

以上都是我的一些正向反馈,这些都能激励我更有动力的去学习,学习,你也有该有自己的正向反馈!

关于“学习方法不对”

这几天特别中意一句话“当你找到了适合自己的努力方式,你就如同万千牛人一样走在了光彩夺目掌声阵阵的人生征途上”,这句话就强调了方法是多么的重要,有的时候我们很项目那些学霸,觉得是自己智商不够,其实不然,最重要的是那些所谓的学霸都有自己的一套学习方法。我们可以扪心自问,我们大多数人每天都在学习,但是又有多少人真正思考过自己学习方法的问题呢?我只是机械式的去学习而已,并没有想着找寻一套属于自己的方法体系,这就是我们与学霸的差别吧!

前几天在读美国作家本尼迪克特•凯里的《如何学习》一书,读完很受启发,其中书中提到了一种学习方法叫做“分散式学习”,讲述的是利用间隔效应去学习,通俗来说就是我们把大块的学习任务拆分开来去学,书中提到,你花两个小时一口气把一个知识点给学了没有分两天每天一小时的学习效果好,这就是方法

关于学习方法的探讨很多很多,只是我们貌似从来没有在意过,另外,切记只有适合自己的才是最好的,成功的人有很多,但是他们的路你不一定走得了,去寻找属于自己的学习方法论吧!

关于“知识不成体系”

不知道大家在学习的过程中有没有做笔记的习惯,我一直觉得做笔记是非常重要的,记得在高中的时候,我会给每一科都准备一个笔记本,上面写满了笔记,但是后来愈发的觉得笔记很乱,经常是一个知识点在很多页记着,这就导致了很多问题。我们在回过头来说“知识不成体系”,确实如此,我们每天都在学习,每天都接收了大量的信息,而且这些信息又是零散的,不成体系的,如果我们再不加以记录,很容易遗忘,而且会感觉乱糟糟的,一点也不清晰明了,该怎么办?很简单,将我们学到的知识都记录下来,而且是分门别类的记录下来,将知识体系化,做一个属于自己的体系化知识库,这样我们不仅会对我们学习的知识有个全面的了解,而且非常方便我们的复习巩固等!还可以让我们看到哪地方是自己的弱势,方便弥补!这里以我自己举个例子,方便大家理解!

我在学习Android的时候会将自己学到知识都分类别的进行整理,将自己学到的知识体系化,例如我会分成如下类别:

  • 性能优化
  • 多线程
  • 源码分析
  • 数据结构和算法
  • 设计模式
  • 框架设计
  • NDK
  • APP开发
  • 微信小程序
  • Flutter和kotlin

再比如我在学习中制作的一个学习思路脑图,由于内容过多,这里就放上一个大概的思路脑图分享给大家 高清图可以看文末

有了以上的分类记录,我就对Android的一个大概的知识体系有个了解,以后相关学习都会放在对应的目录下,平常看看,也知道自己哪方面不熟悉,随时复习巩固,做到对学到的知识心中有数,体系化知识构建不可缺少!

本文在开源项目:Android开发不会这些?如何面试拿高薪! 中已收录,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

ZF)** 中已收录,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

以上是关于原生Android开发的路该怎么走?面试总结的主要内容,如果未能解决你的问题,请参考以下文章

原生Java开发的路该怎么走?附相关架构及资料

原生Android开发的路该怎么走?移动架构师成长路线

原生Java开发的路该怎么走

原生Java开发的路该怎么走?详细的Java学习指南

2021年Android开发新技术动向,未来的路该怎么走?

学习编程的路该怎么走?