1.采用组件化编程,常用的一种就是采用CocoaPods将项目业务模块分拆成各种pod库,使用什么模块直接集成就好,再配合MVVM和响应式编程框架(如 ReactiveCocoa或者RxSwift),可以做到最大程度的解耦。
2.优化
a. 代码规范,定期code review了吗
b. 复杂列表的滚动时FPS可以保持在60帧左右吗?
c. 页面加载渲染的耗时能不能进一步减小?
d. 网络缓存有做吗,UIWebView / WKWebView的常用静态资源做缓存了吗
e. App的启动时间可以在保持最小业务逻辑的同时再减小一点吗?
3.离屏幕渲染
GPU屏幕渲染有以下两种方式:
On-Screen Rendering
意为当前屏幕渲染,指的是GPU的渲染操作是在当前用于显示的屏幕缓冲区中进行。
Off-Screen Rendering
意为离屏渲染,指的是GPU在当前屏幕缓冲区以外新开辟一个缓冲区进行渲染操作。