清理iOS工程工具调研

需要清理哪些内容

  1. 无用类、方法、全局变量/常量
  2. 无用资源(图片、文本、语音等各类资源)
  3. 针对OC,无用类的import
  4. 针对Swift,无用module的import

有哪些好工具可以使用

项目 工具 备注
无用类、其他类型(如Swift中的struct、enum等) - fui - periphery - periphery仅适用于Swift代码,可以检测Swift中的各种类型 -fui仅适用于OC代码
无用资源 - FengNiao - LSUnusedResources - LSUnusedResources是一个Mac App。从其他工程师的对比来看效果没有FengNiao好,且已经很久不更新了 - FengNiao是onevcat出品,必属精品
OC无用的import - AppCode-Optimize Imports - impoprt_minimizer - impoprt_minimizer是通过脚本递归的检查每个import是否必要。速度太慢,大工程根本等不起 - 实际体验下来,AppCode速度要快一些。但对于大一点的工程来说,依然很慢
无用方法、全局变量/常量 - AppCode-Inspect code - periphery
Swift中无用的import module - periphery

使用提醒

  • 对无用资源(比如图片)的清理要慎重,比如资源通过代码拼接的方式获取资源名时
    • 比如UIImage(named: "(iconName)(iconSize.sizeString)")来获取图片时,通过上面工具可能就会错误的将iconName图片认为是无用的
    • 所以最好人工确认一下
  • 使用AppCode对代码进行清理时也不是100%准确,比如会误删有用的头文件import
    • 不过误删会编译报错,所以也不容易将错误带到线上

参考

相关推荐
Mike117.5 小时前
GBase 8c 索引设计与性能优化实战
性能优化
终端鹿5 小时前
Vue3 高频面试题系列:响应式原理 / 组合式 API / 性能优化 3 大核心模块
性能优化
ofoxcoding8 小时前
React 性能优化实战:我把一个卡成 PPT 的页面优化到丝滑的全过程
javascript·react.js·ai·性能优化
UXbot9 小时前
AI App 设计生成工具哪个好?
ui·kotlin·软件构建·产品经理·ai编程·swift
动恰客流管家10 小时前
动恰3DV3丨 数据修正,破解客流失真断层,精准还原真实客流
大数据·人工智能·3d·性能优化
当时只道寻常10 小时前
JavaScript 实现图片懒加载
javascript·性能优化
wang090710 小时前
Linux性能优化之上下文切换
linux·运维·性能优化
UTwelve10 小时前
【UE】如何正确旋转法线贴图
性能优化·ue5·材质·贴图·着色器
桌面运维家11 小时前
Windows性能优化:任务管理器深度使用指南
windows·性能优化