美文网首页
项目优化

项目优化

作者: kklwg | 来源:发表于2019-11-14 09:36 被阅读0次

1. UITest & UnitTest

当开发完新需求的时候,在提测之前我们最好编写下UITest和UnitTest,覆盖主业务流程即可,可以提高我们的提测质量,减小一些可见的Bug,再加上冒烟用例,最大程度上提高我们提测的质量(成为KPI之王 - 😏),而且上线之后这些单元测试和UITest组件的脚本可以配合自动化测试定期进行回归测试,提高App的质量,减少崩溃率

2.NullSafe

绝大多数情况下,我们向NSNull对象发送消息,都会产生崩溃,NSNull对象常见于后台返回数据中可能会有null字段,很多JSON库都会转成NSNull对象,如下情况就会产生崩溃:

但是向nil对象发送消息则不会产生崩溃,这些可以参考NullSafe中的处理方法,重写

- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector和- (void)forwardInvocation:(NSInvocation *)anInvocation这两个方法将没能力处理消息的方法签名转发给nil对象则不会产生崩溃

此外,常见的崩溃比如,NSArray取值越界,NSDictionary传了nil对象,这些问题产生的崩溃可以使用Runtime中的Method Swizzle,将原生的方法hook掉,如下:

这种解决方法可以避免诸如数组取值越界、字典传空值、removeObjectAtIndex等错误,如下的崩溃就可以避免:

id obj=nil;NSMutableDictionary*m_dict=[NSMutableDictionary dictionary];[dict setObject:obj forKey:@"666"];

相关文章

  • iOS 如何优化项目

    iOS 如何优化项目 iOS 如何优化项目

  • 无标题文章

    目录 笔记大型项目优化概述大型项目优化的方向代码优化数据库优化缓存优化架构优化Memcache与MySQL比较语法...

  • 前端首屏优化指标

    由于项目项目特殊性,需要对首屏做项目优化现记录如下 1首屏优化指标 想做优化,先要有做优化的指标,不然就没有太多目...

  • webpack的性能优化

    webpack项目优化主要分为两个方面的优化,生产环境的代码优化和开发环境的项目构建优化 生产环境的代码优化 第一...

  • 2018最新 Android 面试题总结(三)

    Q:项目中如何做性能优化的? 举例说明项目注意了哪些方面的性能优化,如布局优化、绘制优化、内存泄漏优化、 响应速度...

  • 大型项目优化的介绍

    大型项目的优化介绍 大型项目优化的成果,是非常显著的,小型项目优化的成果,并不是那么明显的。大型项目:访问人数多!...

  • 「性能优化系列」APP内存优化理论与实践

    性能优化系列: 启动优化 内存优化 布局优化 卡顿优化 apk瘦身优化 电量优化项目地址: fuusy/F...

  • 你会经常遇见的android性能优化方面知识总结

    项目源码 目录 布局优化 绘制优化 内存泄漏优化 ListView和Bitmap优化 布局优化 减少布局文件的层级...

  • vue项目优化

    vue 项目优化 项目打包体积优化 通常vue项目通过webpack打包后,会出现vendor包的体积过大的情况,...

  • 前端小白说Vue性能优化

    开场白:个人认为性能优化可以从三个方面来进行:代码层面的优化项目大包的优化项目部署的优化 1. 优化循环 大多数循...

网友评论

      本文标题:项目优化

      本文链接:https://www.haomeiwen.com/subject/xzvlictx.html