清理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
    • 不过误删会编译报错,所以也不容易将错误带到线上

参考

相关推荐
见山是山-见水是水8 分钟前
网络请求性能优化落地指南:让原生界面在模拟器里稳定运行
网络协议·华为·性能优化·harmonyos
_ZHOURUI_H_1 小时前
Unity EasyECS:并不是所有字段都适合 SoA,Unity 项目中应该怎样拆数据
游戏·unity·性能优化·架构·游戏引擎
Android打工仔1 小时前
一次 Android 拍照后卡顿的 Perfetto 定位与优化实践
android·性能优化
PHP实战开发录3 小时前
PHP后台大文件导出内存溢出排查记录
性能优化·系统架构·php·开发
Cx330❀5 小时前
【LangChain】LangChain 核心技术全景指南:从基础入门到 LCEL 链式编程
大数据·elasticsearch·搜索引擎·性能优化·langchain·全文检索
b_bencom13 小时前
联想ThinkStation P7深度测评:从硬件拆解到AI推理性能,商红科技实测全记录
性能优化·ai推理·thinkstation p7·硬件测评·商红科技
muddjsv15 小时前
前端性能优化实战:从加载到渲染的全面提速指南
前端·性能优化
这个DBA有点耶18 小时前
SQL优化进阶:读懂“索引下推”,告别回表噩梦
数据库·sql·性能优化
懋学的前端攻城狮20 小时前
把 SwiftUI List 换成 NSTableView:一次目录树卡顿的排查记录
macos·swiftui·swift
2501_915106321 天前
Swift 开发环境搭建指南:三条路径按目标对号入座
开发语言·vscode·ios·objective-c·个人开发·swift·敏捷流程