• iOS工程开发笔记<二>


    在Xcode 4, 5的模板工程中可以看到Precompile Prefix Header,但是在Xcode 6被去除了。

    Xcode 6去掉Precompile Prefix Header的主要原因在于:

    (1)去掉自动导入的系统框架类库的头文件,可以提高原文件的复用性,便于迁移。

    (2)一个肥胖无比的Prefix Header会大大增加Build Time。

    为了取代在Prefix Header中自动导入的框架,可以在每一个需要导入系统框架的文件中通过#import来手动导入,当然要确保Build Settings中的Enable Modules是打开的。

    如果在Prefix Header中导入了,那么我们在工程的每一个文件中可以免费获得使用的权利,而无需手动在每一个.h/.m文件中导入。该文件确有其方便之处。

    如果一定要用到PreFix Header文件,我们可以手动配置。

    1. 在工程中增加一个pch文件,命名还是按照Xcode 5的模板比较好:工程名-Prefix.pch,例如a-Prefix.pch
    2. 设置Build Settings

    设置Precompile Prefix Header为YES,那么pch会被预编译,预编译后的pch文件会被缓存起来,从而提高编译速度。可以从下面的Build Log中看出:

    如果Precompile Prefix Header为NO,那么每个引用了pch内容的.m文件都要编译一次pch,可能Apple会另外做缓存机制,但是这样还是降低了编译的速度。

    既然Apple标准都建议我们不用pch了,那么还是尽量少用吧。当然,如果一定要用,还是尽量减少pch文件中的内容,降低工程对pch文件的依赖性,便于日后的迁移和解耦。

  • 相关阅读:
    JS判断浏览器
    【JS】时间不足10位补0方案
    【js学习小计】
    【Tangram】 通过监听进行事件触发
    JavaScript CSS Style属性对照表
    Resolve and Remove "BAD PASSWORD: It is Based on a Dictionary Word "in Linux
    [C++]关键字explicit
    [转]CentOS设置程序开机自启动的方法
    SqlServerCLR聚合函数:分组连接字符串
    vmware centos 虚拟机复制
  • 原文地址:https://www.cnblogs.com/WongSuechang/p/4059992.html
Copyright © 2020-2023  润新知