🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
本章是本书的最后一章,所介绍的主题是Android的性能优化方法和程序设计的一些思想。通过本章的内容,读者可以掌握常见的性能优化方法,这将有助于提高Android程序的性能;另一方面,本章还讲解了Android程序设计的一些思想,这将有助于提高程序的可维护性和可扩展性。另外,2015年Google在YouTube上发布了关于Android性能优化典范的专题,通过一系列短视频来帮助开发者创建更快更优秀的Android应用,课程专题不仅仅介绍了Android系统中有关性能问题的底层工作原理,同时也介绍了如何通过工具来找出性能问题以及提升性能的建议,地址是: https://www.youtube.com/playlist? list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE。 Android设备作为一种移动设备,不管是内存还是CPU的性能都受到了一定的限制,无法做到像PC设备那样具有超大的内存和高性能的CPU。鉴于这一点,这也意味着Android程序不可能无限制地使用内存和CPU资源,过多地使用内存会导致程序内存溢出,即OOM。而过多地使用CPU资源,一般是指做大量的耗时任务,会导致手机变得卡顿甚至出现程序无法响应的情况,即ANR。由此来看,Android程序的性能问题就变得异常突出了,这对开发人员也提出了更高的要求。为了提高应用程序的性能,本章第一节介绍了一些有效的性能优化方法,主要内容包括布局优化、绘制优化、内存泄露优化、响应速度优化、ListView优化、Bitmap优化、线程优化以及一些性能优化建议,同时在介绍响应速度优化的同时还介绍了ANR日志的分析方法。 性能优化中一个很重要的问题就是内存泄露,内存泄露并不会导致程序功能异常,但是它会导致Android程序的内存占用过大,这将提高内存溢出的发生几率。如何避免写出内存泄露的代码,这和开发人员的水平和意识有很大关系,甚至很多情况下内存泄露的原因是很难直接发现的,这个时候就需要借助一些内存泄露分析工具,在本章的第二节将介绍内存泄露分析工具MAT的使用,通过MAT就可以发现一些开发过程中难以发现的内存泄露问题。 在做程序设计时,除了要完成功能开发、提高程序的性能以外,还有一个问题也是不容忽视的,那就是代码的可维护性和可扩展性。如果一个程序的可维护性和可扩展性很差,那就意味着后续的代码维护代价是相当高的,比如需要对一个功能做一些调整,这可能会出现牵一发而动全身的局面。另外添加新功能时也觉得无从下手,整个代码看起来可读性很差,这的确是一份很糟糕的代码。关于代码的可维护性和可扩展性,看起来是一个很抽象的问题,其实它并不抽象,它是可以通过一些合理的设计原则去完成的,比如良好的代码风格、清晰的代码层级、代码的可扩展性和合理的设计模式,在本章的第三节对这些设计原则做了介绍,这将在一定程度上提高程序的可维护性和可扩展性。