与其每天浑水摸鱼、浑浑噩噩,不如多进阶学习,提升自己的竞争力。
Android中高级必会知识点:
一、性能优化
1、APP稳定性优化
1.做过哪些稳定性方面的优化?
2.性能稳定性是怎么做的?
3.业务稳定性如何保障?
4.如果出现异常,怎样快速止损?
2、APP启动速度优化
1.启动优化原理是什么?
2.是怎么异步的,异步遇到过什么问题吗?
3.启动优化有哪些容易被忽略的地方?
4.版本迭代导致的启动变慢有好的解决方式吗?
面试中面试官的问题,也很可以直观的让你了解到对方公司的技术水平和业务需求,而换工作对我更多考虑的是公司发展与团队氛围。
一个公司的发展与否直接关系到你付出的回报,而一个团队的氛围决定你的工作是在成长还是在“扯皮”。其次身体健康和家庭也很重要,在衡量一份工作的时候,我也会把这些因素考虑在内,因为我一直认为,努力工作就是为了幸福的生活。
工作
事实上我相信大多数程序员都存在**危机感,**无论是媒体的宣导,还是大环境的压迫,这很容易让我们产生焦躁和迷茫的情绪,对比那些大神们,很多时候我们都是在默默耕耘着一些“不知名”项目。
但这就是生活,把手头事情做好,然后多给自己准备提升的空间,这会比起对着屏幕自哀更舒适,毕竟一时学习一时爽,一直学习一直爽。
每个人都有自己的选择,就像之前某个视频里提到的:“他们有他们的节奏,我们有自己的步伐”,有些时候你需要订下自己的小目标,而不要被风头打乱了节奏。曾经一个段子:“你和产品经理讨论了一天的需求和大环境,他的任务完成了,你的工作还没开始。”
从离职流程、面试、适应新环境一步步走来,每次都有一番难以言喻的感慨。其实换工作最累的是离职,离开你熟悉的地方,放弃你当前平台积累的资源,所以我希望每一次跳槽都是为了更好的目标而去争取,而人的每次一选择都会让你更成熟。
所志在功名,离别何足叹。
尾声
评论里面有些同学有疑问关于如何学习material design控件,我的建议是去GitHub搜,有很多同行给的例子,这些栗子足够入门。
有朋友说要是动真格的话,需要NDK以及JVM等的知识,首现**NDK并不是神秘的东西,**你跟着官方的步骤走一遍就知道什么回事了,无非就是一些代码格式以及原生/JAVA内存交互,进阶一点的有原生/JAVA线程交互,线程交互确实有点蛋疼,但平常避免用就好了,再说对于初学者来说关心NDK干嘛,据鄙人以前的经历,只在音视频通信和一个嵌入式信号处理(离线)的两个项目中用过,嵌入式信号处理是JAVA->NDK->.SO->MATLAB这样调用的我原来MATLAB的代码,其他的大多就用在游戏上了吧,一般的互联网公司会有人给你公司的SO包的。
至于JVM,该掌握的那部分,相信我,你会掌握的,不该你掌握的,有那些专门研究JVM的人来做,不如省省心有空看看计算机系统,编译原理。
一句话,平常多写多练,这是最基本的程序员的素质,尽量挤时间,读理论基础书籍,JVM不是未来30年唯一的虚拟机,JAVA也不一定再风靡未来30年工业界,其他的系统和语言也会雨后春笋冒出来,但你理论扎实会让你很快理解学会一个语言或者框架,你平常写的多会让你很快熟练的将新学的东西应用到实际中。
初学者,一句话,多练。
由于文章篇幅问题 查看详细文章以及获取学习笔记链接:前往我的文档免费领取