app开发面试题及答案,程序员如何自我学习和成长

本文探讨了程序员担心35岁被裁员的原因,分享了App开发面试题,包括图片缓存、内存管理、WebView优化、Bitmap处理和内存回收机制。并推荐了相关开源项目和学习资源,帮助开发者提升技能和职业发展。
摘要由CSDN通过智能技术生成

前言

我们程序员之所以担心35岁被裁员,是因为自己的经验和实力能力不符合,国内IT现状,大多数程序员都在外包公司工作,框架老化,代码就是为了完成任务而写,刚定好需求你做一半产品突然让你改需求……一切的一切,导致你每天都在重复基础的增删改查和简单业务处理,身边的人不如你甚至比你更烂,你找不到一个方向去提升自己,日复一日,虽然你工作好久,但是你对深一层次的代码依然一无所知,看不懂源码,写不出好的代码,该会的都会了,该不会还是不会,三年前是这样,三年后还是这样,没什么变化。

正文

1.图片的三级缓存中,图片加载到内存中,如果内存快爆了,会发生什么?怎么处理?

参考回答:
首先我们要清楚图片的三级缓存是如何的

如果内存足够时不回收。内存不够时就回收软引用对象

2.内存中如果加载一张500X500的png高清图片.应该是占用多少的内存?

参考回答:

  • 不考虑屏幕比的话:占用内存=500 * 500 * 4 = 1000000B ≈ 0.95MB
  • 考虑屏幕比的的话:占用内存= 宽度像素 x (inTargetDensity / inDensity) x 高度像素 x (inTargetDensity / inDensity)x 一个像素所占的内存字节大小
  • inDensity表示目标图片的dpi(放在哪个资源文件夹下),inTargetDensity表示目标屏幕的dpi

3.WebView的性能优化 ?

参考回答:
一个加载网页的过程中,native、网络、后端处理、CPU都会参与,各自都有必要的工作和依赖关系;让他们相互并行处理而不是相互阻塞才可以让网页加载更快:

  • WebView初始化慢,可以在初始化同时先请求数据,让后端和网络不要闲着。
  • 常用 JS 本地化及延迟加载,使用第三方浏览内核
  • 后端处理慢,可以让服务器分trunk输出,在后端计算的同时前端也加载网络静态资源。
  • 脚本执行慢,就让脚本在最后运行,不阻塞页面解析。<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值