.a VS .framework VS .dylib

什么是库?

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

静态库和动态库的区别?

静态库:链接时完整的拷贝至可执行文件中,被多次使用就有多份冗余拷贝。
动态库:链接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存。(逆向抢红包插件使用方法)

iOS静态库

.a和.framwwork文件

iOS动态库

.dylib和.framework

.framework既是静态库又是动态库?

系统的.framework是动态库,开发者建立的.framework是静态库

.a和.framework区别

.a是一个纯二进制文件,.framework中除了有二进制文件之外还有资源文件。
.a文件不能直接使用,至少要有.h文件配合,.framework文件可以直接使用。
.a + .h + sourceFile = .framework

参考

你可能感兴趣的:(.a VS .framework VS .dylib)