iOS-项目没有代码提示问题

之前遇到项目运行慢、卡、没有智能提示,解决项目编译慢的问题,是因为项目文件层级太深导致的(这个只是我遇到的,适不适合大家自己尝试吧),但是没有代码提示,还是没有解决。


image.png

因为最近这段时间忙得差不多,想着整理一下项目,我们项目使用有赞的组件化方式搭建,一个主工程下面存在多个子工程,其中一个子工程也不知道从哪个版本开始模块始终没有代码提示,代码全是白色,在这个子工程中写代码就是纯靠手敲(都感觉这段时间我撸代码水平都提高了,对系统的API都能纯手撸了)。
在整理项目中我发现在该子模块的PCH文件引用太多的文件,但是这些文件并不是好多地方都要使用的,我就将这些文件引用全部分散到需要使用的地方,意想不到的竟然解决没有代码提示的问题。


image.png

反思

经过解决这个问题,不由得引起我的深思,想起苹果开发对权限请求的一个要求哪里使用哪里请求,那平时开发引用文件也遵守这个原则,项目的编译和运行就会比较流畅。之后我在comment层的优化中验证了这个问题。
comment层是基础库,有好多分类扩展、公共工具类、自定义View等,当时为了方便引用我创建了一个Comment.h的头文件,将经常使用的类.h文件都放在这个头文件,在外面统一引用。甚至把Comment.h在子工程的PCH文件中,导致每次修改基础库整个项目重现编译时间特别长。
后来我将一个工具类从Comment.h中删除,子工程单独引用,修改里面文件,编译速度就跟修改普通文件一样。

结论

PCH虽然很方便,但是使用要慎重,他有可能就是导致项目运行速度变慢的原因,后面我还优化了项目文件的引用,在.h文件中使用@class引用头文件,在真正使用的.m文件中在import

你可能感兴趣的:(iOS-项目没有代码提示问题)