Mac 开发笔记(一):动态链接库与静态连接库

一、动态链接库和静态链接库

静态链接库(.a或.framework):编译时加载,IOS8以前手机上只有苹果可以使用动态链接库。IOS8以后,对开发者开放;

动态链接库(.dylib):运行时加载,可以不重新安装整个应用,只通过更新库,就可以更新内容


使用静态库的好处
1.模块化,分工合作
2.避免少量改动经常导致大量的重复编译连接
3.也可以重用,注意不是共享使用 使用动态库的好处

使用动态库的好处
1.可以将最终可执行文件体积缩小
2.使用动态库,多个应用程序共享内存中得同一份库文件,节省资源
3.使用动态库,可以不重新编译连接可执行程序的前提下,更新动态库文件达到更新应用程序的目的。


二、dylib文件制作

1 new project->(OS X )Framework&Library ->Library(注:type选用dynamic)
2 添加代码到项目中,头文件在一个文件(文件名跟lib名一致,如cocoa/cocoa.h)中全部列出
3 由于.dylib不能包含资源文件,如.xib、图片资源等,新建一个bundle,把资源文件包含进去
4 为了一次编译得到结果,新建一个 Aggregate, 把dylib项目、bundle文件都包含进去
5 Scheme选择 Aggregate 编译
6 编译出的文件包括三部分:1).dylib文件;2).bundle文件;3)头文件【可以不需要】
7 功能验证,在demo中导入 .dylib 和 .bundle,import 头文件开始功能验证

你可能感兴趣的:(Mac)