框架和动态库之间的主要区别是什么

Pri*_*Raj 16 macos cocoa objective-c

框架工作和动态库之间的主要区别是什么

Bar*_*ark 13

OS X框架的核心动态链接库.Framework是一个称为"框架包" 的特殊目录结构,它包含动态链接库的一个或多个版本,以及依赖框架,资源,元数据等.OS X上的其他"包"包括.app包(其中)包含可执行文件以及资源,依赖框架等...).


Ins*_*ges 8

动态库是一个基本概念,大多数独立于特定平台,即你可以在OSX,Linux,Windows上讨论动态库,这意味着相同的基本事物 - 一块可重定位目标代码,带有导出的API符号,其组成方式是允许它由平台上的应用程序按需加载和共享.

框架是OSX特定的术语.它是一个包,它定义了一些共同商定的目录结构,并在预定义的位置存储动态库,资源,包的描述和其他相关内容.这意味着它具有大部分语义含义,允许开发人员(以及他们创建的工具)以通常理解的方式引用它.值得注意的是,框架根本不需要包含共享库.

  • @prithviraj - 跨应用程序共享库代码的操作系统共享代码段.数据段通常作为"写时复制"加载,这意味着加载了单个副本,并且任何从不更改它的代码都会共享该副本.只要在库的数据段中进行了更改,这些页面就会被复制到应用程序的本地存储空间中,同时仍然共享只读代码页. (3认同)