Cocoapods 二进制

栏目: IOS · 发布时间: 6年前

内容简介:什么是组件二进制化?为什么我们需要二进制化呢?下面是使用的工具个人理解上的对比,如果有不对的地方往指正和沟通,互相进步和学习

什么是组件二进制化?

  • 在iOS开发中,事实标准是我们使用CocoaPods生成、管理和使用library。这里的library就是一个模块、组件或库。二进制化指的是通过编译把组件的源码转换成静态库或动态库,以提高该组件在App项目中的编译速度。

为什么我们需要二进制化呢?

  • 在我们App开发中,我们逐渐的抽象了很多模块、业务、UI等把他转换成私有CocoaPod库。其中有很多我们自己的组件是用Swift写的,源码格式为.Swift。在app项目编译时.Swift部分代码编译非常慢。 随着业务的扩展,私有CocoaPod库和第三方CocoaPod库越来越多,App项目中的文件也越来越多。每次pod install安装新库或pod update更新库的时候,重新编译的过程需要等待很长时间。这也向我们提出了加快编译速度的需求。

下面是使用的 工具 个人理解上的对比,如果有不对的地方往指正和沟通,互相进步和学习

Cocopods组件二进制插件

  • 二进制化后,可以看出我们编译的target变少了,少了RxSwift.....这些target,这些就时间差的由来。
  • cocoapods-bin (是一个非cocoapods的开源项目)
    • 该插件进行二进制化的策略是采用双私有源,即2个服务器一个静态服务器保存预先打好包的.a或者framework,一个是我们现在保存源码的服务器,在install的时候去选择使用下载那个。
    • 该插件优点缺点也十分明显
      • 优点:源码和二进制文件之间可以来回切换,速度比较快
      • 缺点:源码的变动不能及时得到响应,而且需要第二个私有服务器
  • cocoapods-packager (cocoapods的开源项目)
    • 该插件是cocoapods的一个插件,主要是来将私有库打包成二级制的一个插件,通过修改*.podspec文件
    • 该插件的优缺点:
      • 优点:可以将私有库打包成二级制文件,由组件本身去管理二进制文件,方便为主项目集成,私有库变动等
      • 缺点:该库已经有很长一段时间不维护了,很多问题都未解决,而且我们的组件里依赖相对比较复杂,使用的Swift不能很好的支持。
  • cocoapods-binary (是一个非cocoapods的开源项目)
    • 该插件是开源的Cocoapods推荐的的一个插件,主要是来将Podfile里所依赖的组件选择性打包成二级制的一个插件,通过修改Podfile文件里的内容
    • 该插件的优缺点:
      • 优点:选择性的在将那些组件使用二进制,不需要多个服务去存二级制文件,二进制文件在pod install的过程进行预编译,生成的项目之间依赖framework。源码变动能比较快的得到相应
      • 缺点:二进制切换到源码文件的时候都会删除已经打好的二级制文件,下次切换需要重新编译新的二级制文件,这个过程比较耗时

Usage

在Podfile中加入以下内容

#引入插件  
plugin 'cocoapods-binary'  
#一定要使用framework  
use_frameworks!  
#该值打开后 默认所有的依赖都将开启二进制化  
#all_binary!  

#在依赖的组件后添加:binary => true/false 来切换源码和二级制 如果打开了上面的all_binary!后默认都是true   
target "HP" do   
  pod "ExpectoPatronum", :binary => true  
end
复制代码

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据挖掘导论

数据挖掘导论

(美)Pang-Ning Tan、Michael Steinbach、Vipin Kumar / 机械工业出版社 / 2010-9 / 59.00元

本书全面介绍了数据挖掘的理论和方法,着重介绍如何用数据挖掘知识解决各种实际问题,涉及学科领域众多,适用面广。 书中涵盖5个主题:数据、分类、关联分析、聚类和异常检测。除异常检测外,每个主题都包含两章:前面一章讲述基本概念、代表性算法和评估技术,后面一章较深入地讨论高级概念和算法。目的是使读者在透彻地理解数据挖掘基础的同时,还能了解更多重要的高级主题。 本书特色 ·包含大量的图表、......一起来看看 《数据挖掘导论》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

URL 编码/解码
URL 编码/解码

URL 编码/解码

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具