iOS优化方案是个大的目标,可以细分为以下几点:
1.性能优化
2.架构优化
3.代码规范
4.线上监控
其中这几点又可以再细分,以下对没点详细描述
1.性能优化
1)列表优化:主要是避免列表滑动卡顿,即避免每次加载做过多的事情。知知道要避免的事情后,可以优化的点有cell重用、缓存cell高度、异步处理耗时任务、懒加载等
2)启动优化:启动尽量少做一些任务,即在满足启动的需求之前少做一些处理,把要处理的任务往后放,使用懒加载避免没必要的加载,少创建对象,耗时的任务异步处理
3)内存优化:在for循环里面使用局部变量的,可以在for外层套自动释放池,避免内存暴增。一些不一定使用的对象使用懒加载,比如弹窗。避免离屏渲染。
2.架构优化
架构主要指模块的设计,设计要遵循SOLID(单一、开放封闭、里氏替换、接口分离、依赖倒置),模块小的可以用MVC,业务复杂的可以用MVP、MVVM,只要遵循这些原则,写出的代码不会太难看。还有一点是只要发现架构有问题一定要及时调整,否则越往后在此基础上造成的坑会越来越多,相信大家都不愿意看到这种情况。
3.代码规范
1)命名规范:类名名词,一个类有具体的功能,尽量只做一种事,方法名用动词,简洁明了的名字,方法尽量少的参数,方法只做一件事,多的事情分成多个方法。
2)文件优化:工程文件按类型分包,比如按业务模块分,一个业务模块又可以按照MVC划分。工程中的废弃的类、图片及时清理,有一些找出无用的类和图片的工具,具体网上搜一搜,使用APPCode集成开发工具可以直接看出哪些类是无用的。
4.线上监控
线上监控也可以算优化的一种,可以帮助我们定位线上的问题,提高定位问题的效率,常用的工具有PLCrashReporter或者KSCrash。