本文目录
三年经验的程序员会什么东西
其实程序员这个行业的经验,是不能用时间来衡量的。为什么这么说呢?因为我就是安卓程序员。拿安卓开发举例子,三年经验的安卓程序员,一般来说最基本的activity启动流程源码得看一遍,但是我身边很多都没看过,也有的才工作两年,ASM的源码就刷了一遍了。所以我觉得探讨三年经验的程序员需要会什么东西,会更有意义些!
欢迎大家关注我。探讨更多IT界的小知识!
开发app怎么提高运行速度
App运行速度分析以及初步优化方案
一、 App运行速度分析
(1)硬件约束
CPU主频,多核;
CPU主频决定手机的运算速度,多核则更多体现在并发任务方面。
内存:运存与内存(RAM+ROM)
图1-1 移动端内存示例图
运存是指手机运行程序时的内存,也叫RAM简称运存;RAM越大,手机可运行的APP应用程序越多,运行越流畅,目前RAM基本是2GB够用,3GB流畅,4GB极佳。
内存是指手机的存储控件,也叫ROM;ROM越大,手机储存的文件空间越多,目前ROM基本是16GB,32GB,64GB;ROM不影响手机的运行速度。
当运存(RAM)匮乏时,运行大型APP会出现卡顿、黑屏甚至出现暂时性卡死状态。
在运存不够时可以采取手动关闭后台不必要的程序进行释放,或者通过手机管理软件进行内存释放,例如手机管家、手机安全卫士等。
(2)网络环境影响以及服务器接口环境
网络状况直接影响业务型APP的体验,例如用户登陆业务;登陆时手机端需要向服务器发送用户的登录名及密码等信息,服务器进行信息核对后返回登陆状态指令,手机端接收到返回信息进行业务跳转。登陆业务只需要进行一次接口调用,在网络和服务器环境都理想的情况下,
Android事件分发机制都不会,面试如何装B
我的观点是总得会点啥才能成功装B。。。
在我面试Android开发岗的有限经验中,我的感觉是你可以不所有东西都会,但最好是能对某一个或几个方面有深入的理解,比如:
1. Binder 原理
2. Handler、Message、MessageQueue 机制
3. 事件分发机制
4. Activity 启动流程
5. 常用第三方库的原理
等等等等。
所谓一招鲜吃遍天,但如果一招都没有,那很难吃得住啊。
何况,事件分发机制也不算特别复杂,何不花一些时间学习,做一点简单的示例实践对照,然后将其掌握呢?这样就没有这个困扰啦。