优化移动应用性能的开发者指南

译文
移动开发 移动应用
本文将讨论如何优化移动应用的性能,以便发挥移动应用的业务平台作用,并让用户只需几次触按,即可获得需要的服务。

【51CTO.com快译】

如今,随着智能手机的普及,各种安装在手机上的应用程序,让人们的日常生活与各项活动变得越来越轻松。从为自己的出行预订出租车,到在心仪的餐厅处订购餐食,移动应用已经给我们带来了前所未有的便捷与高效。我们很难想象自己是否能够坚持在一天之内,完全不去触碰手机,或开启任何一款移动应用。

[[333415]]

移动应用的优化势在必行

由于人们时常需要用到各种移动应用,而且期望它们能够实现过去无法快速完成的功能,因此应用的整体性能是至关重要的。一直以来,各个领域的开发人员都持续着眼于,各类应用在运行性能和响应效率上的不断优化与提升。

试想一下,一个用户兴冲冲地拿起手机,进入某个订餐应用,将“炸鸡+啤酒”放入购物车后,却发现该应用需要长时间等待才能完成支付动作,甚至根本无法下单。那么,他还会下次使用这款应用吗?他还会将这款应用保留在手机里吗?可见,用户对于移动应用的使用体验,会直接与用户留存率(user retention)挂钩。

此外,除了提供基本功能,简单易用的导航栏和协调友好的界面,也能够流畅地连接用户与后端服务提供商,让用户及时获取他们所需的信息与结果。可见,移动应用同时也起到了良好的桥梁作用。

那么,有哪些因素会影响到我们对移动应用的优化呢?总的说来,有如下三个方面值得开发人员密切注意:

1.用户期望

一直以来,我们都需要认识到:开发移动应用,并不是单纯地“秀技术”,而必须充分考虑到服务的客户。不过,正所谓:知易行难,在整个开发的过程中,我们的确需要将用户,视为影响开发进程的主要因素。例如:在使用移动应用时,人们往往希望其用户界面不但容易上手,而且稳定无闪退。这就是我们做移动应用开发的“初心”。

2.适应性

移动应用的本质是方便用户能够利用碎片化的时间,随时随地与服务提供商交互,并获取相应的服务。不过,手机所处的移动蜂窝网络毕竟不如Wi-Fi或有线网络那么可靠。不同区域覆盖的范围与频段也不尽相同。因此,作为开发人员,我们必须确保自己的应用能够适应不同的网络类型与状态,特别是在失去网络连接时候,也能够缓存用户的数据,让他们能够持续使用该应用,以完成移动端本地的各项操作。

3.避免用户流失

正如前文所述,如果用户在使用您的移动应用时,不满意他们的体验,那么他们是不会成为“回头客”的。因此在开发时,与用户保持沟通,并及时通过测试和试用的方式,从用户处获取反馈,要比单纯地从论坛社区中获得“一面之词”,更为直接和全面。

那么,我们到底该如何优化移动应用的性能,以发挥移动应用的业务平台作用,并让用户只需几次触按,即可获得需要的服务?

1.专注于用户界面

用户界面的优劣,实际上与该应用在移动终端屏幕上的显示效果关系不大。它主要取决于用户在使用时的方便程度。前面我们提到了与用户沟通,获悉他们对于待开发应用的期望,特别是界面中导航栏、菜单条、以及单手操作时的按钮布局。

试想一下:当用户甚至都无法轻松地找到某个按钮或功能时,他还会为您的设计与开发“点赞”吗?可见,专注于用户界面并使其易用,是移动应用开发人员和优化人员的首要任务。

2.提高应用的可用性

正如前文所述,大多数移动应用的使用场景发生在用户行动过程中。因此,移动网络的可用性往往无法得到充分的保证。试想一下,在用户处于网络覆盖较差的区域中使用着您开发的应用,并且碰到了一定的阻碍。而此时他的手机上正好有能够实现相似功能的应用(如另一个电商平台)。那么只要那款应用的离线性能比您开发的要优秀一点。该用户肯定会毫不犹豫地切换过去,尽管对方可能在服务价位上略高一些。

因此,作为开发人员,您不但需要确保自己开发的移动应用能够流畅地运行在3G、4G、以及5G网络中,而且能够在网络不佳时,持续提供本地的缓存服务。

3.使用分析工具进行监控

保持在与用户交互时的一致性检查是非常重要的。由于用户所使用的移动设备在品牌、系统(如iOS或Android)、以及类型上的不同,您所开发出的应用可能在显示效果上有所差异,甚至会无法正常地运行或被使用。此时,您需要采用某种恰当的分析工具,通过监控和跟踪应用的各项服务和出现的功能性故障,以发掘出那些直接、或间接影响程序正常显示、运行、甚至是崩溃的深层原因。在此基础上,整个团队可以通过代码的调试,来及时修改程序,进而在应用发布之前解决掉此类兼容性问题。

4.测试与试用

对于完成了开发任务的移动应用而言,我们需要进行功能与性能方面的测试与试用,方可交付或分发给最终用户。

由于移动设备带来了更多的不定因素,因此,我们需要采用更加严格的标准,来进行测试,以便在最困难或“最差”的环境中,评估目标应用的可用性和可控性。当然,您也可以根据DevOps的思想,将此类测试“左移”到开发迭代的阶段,并持续开展蓝绿测试。

5.检查应用的运行效率

在用户的智能手机上,各种应用的不同版本往往会同时运行。因此,开发人员需要通过运行效率的检查,以保证它能够与其他各种应用工具和设备相兼容。此外,我们还需要考虑应用在长时间运行时,用到的移动设备内存是否会及时释放,以及对于手机电池的消耗等方面的问题。

总结

上述五点建议,看似稀松平常,却往往是我们作为开发人员容易忽略的用户关注点。希望您和团队成员在开发复杂的移动应用时,能够时常践行上述建议,开发和优化出独立于移动设备,且能够让用户满意的软件产品。

原标题:A Developer's Guide to Optimizing Mobile App Performance 作者: Aman T

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

 

责任编辑:庞桂玉 来源: 51CTO
相关推荐

2011-07-19 09:51:32

性能优化Designing FAndroid

2014-08-04 16:38:37

移动应用

2021-12-25 22:31:55

Sentry 监控SDK 开发 性能监控

2011-04-13 11:31:06

PIM APIBlackBerry

2011-04-13 09:55:16

Mail APIBlackBerry

2011-04-13 13:38:57

选项APIBlackBerry

2011-12-29 17:09:08

开发者沙龙

2014-09-17 17:19:00

开发者听云平台解决应用性能监控难题

2013-09-24 09:23:53

百度

2012-10-09 09:43:50

WLAN优化无线局域网WLAN

2020-03-30 14:00:21

Flutter前端代码

2013-08-09 14:18:33

2013-10-30 12:51:34

2014-08-26 15:02:04

mAPM移动应用性能监测AppDynamics

2015-04-03 17:35:50

移动应用性能听云

2011-04-02 13:44:08

2014-08-05 10:40:02

移动应用开发者

2024-02-01 09:37:42

Kubernetes服务网格• 命令

2024-03-04 08:00:00

Java开发

2012-11-29 10:02:31

移动云应用BYOD策略移动应用程序
点赞
收藏

51CTO技术栈公众号