美文网首页
知识点:OC中.a和framework的区别(转)

知识点:OC中.a和framework的区别(转)

作者: mapg | 来源:发表于2020-08-10 09:49 被阅读0次

OC中的库概念

库是共享程序代码的方式,一般分为静态库和动态库

静态库 && 动态库 区别

静态库:链接时,完整的拷贝至可执行文件,多次使用就会多次拷贝造成冗余拷贝,使包体积变大
动态库:链接时不复制,程序运行时动态加载到内存,供程序调用,系统只加载一次,节省内存

iOS里静态库形式

.a和framework

iOS里动态库形式

.dylib和framework

.framework为什么既是动态库又是静态库

这个分情况,如果是系统的.framework就是动态库,我们自己创建的就是静态库

.a和。framework的区别

.a就是一个纯二进制文件
.framework除了二进制文件之外还有资源文件
.a不能直接使用,需要搭配.h文件
.framework可以直接使用

为什么要使用静态库

代码共享,合理避免重复代码(组件化概念)
代码私有化,提供给别人使用,但不想让别人看到你代码的实现,只暴露接口使用方法(一般多为三方SDK开发)
还有就是组件化的时候,对业务库打包成.a文件会提高编译效率,但会使包体积变大(空间换时间)

作者:杯中怎可无酒
链接:https://www.jianshu.com/p/b58c9ab12463

相关文章

  • 知识点:OC中.a和framework的区别(转)

    OC中的库概念 库是共享程序代码的方式,一般分为静态库和动态库 静态库 && 动态库 区别 静态库:链接时,完整的...

  • OC中.a和framework的区别

    OC中的库概念 库是共享程序代码的方式,一般分为静态库和动态库 静态库 && 动态库 区别 静态库:链接时,完整的...

  • Swift 和 OC 混编之 framework

    Swift 和 OC 混编之 framework 在主工程为 Swift 的 framework 中引用 OC 代...

  • 在.framework 中,OC 和 Swift 互调

    OC 和 Swift 互调(.framework 中和普通项目中) Framework 实现 OC 与 Swift...

  • 按位或操作

    1. OC 和 Swift 中的区别 OC中定义Options Swift 中定义Options ** 在Swif...

  • Framework开发 - Framework中实现OC和Swi

    背景: iOS工程中实现的OC和Swift混编的方案和实现步骤已经很多了,在此不做赘述,本篇文章需要描述的是实现在...

  • 关于纯swift Framework编译的坑

    正常OC Framework用lipo命令合并Simulator和Device的Framework的时候,当输出合...

  • iOS swift-字符串

    OC和Swift中字符串的区别 在OC中字符串类型时NSString,在Swift中字符串类型是String OC...

  • Objective-C基础

    OC OC知识点 OC的字符串 - 1.类:是结构体的升级,用于定义变量 - - 与结构体的区别 关键字 成员变量...

  • 静态库

    OC中库的种类 静态库 .a .framework(被苹果官方逼出来的产物) 动态库 framework dyli...

网友评论

      本文标题:知识点:OC中.a和framework的区别(转)

      本文链接:https://www.haomeiwen.com/subject/qypddktx.html