美文网首页
组件化-动态库实战

组件化-动态库实战

作者: 飞杨天 | 来源:发表于2018-03-06 15:41 被阅读12次

    静态库 常见的是 .a

    动态库常见的是 .dll(windows),.dylib(mac),so(linux)

    framework(in Apple): Framework 是Cocoa/Cocoa Touch程序中使用的一种资源打包方式,可以将代码文件、头文件、资源文件、说明文档等集中在一起,方便开发者使用。也就是说我们的 framework其实是资源打包的方式,和静态库动态库的本质是没有关系的


    静态库: 链接时会被完整的复制到可执行文件中,所以如果两个程序都用了某个静态库,那么每个二进制可执行文件里面其实都含有这份静态库的代码

    动态库: 链接时不复制,在程序启动后用dyld加载,然后再决议符号,所以理论上动态库只用存在一份,好多个程序都可以动态链接到这个动态库上面,达到了节省内存(不是磁盘是内存中只有一份动态库),还有另外一个好处,由于动态库并不绑定到可执行程序上,所以我们想升级这个动态库就很容易,windows和linux上面一般插件和模块机制都是这样实现的。

    组件化-动态库实

    相关文章

      网友评论

          本文标题:组件化-动态库实战

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