CoreFoundation框架详细解析(二) —— 简介

版本记录

版本号 时间
V1.0 2018.02.01

前言

与Foundation框架不同的是,Core Foundation框架 (CoreFoundation.framework) 是一组C语言接口,它们为iOS应用程序提供基本数据管理和服务功能。接下来几篇我们一起重新审视和详细的看一下这个框架。感兴趣的可以看上面写的几篇。
1. CoreFoundation框架详细解析(一) —— 基本概览

Introduction to Core Foundation Design Concepts - Core Foundation设计概念的介绍

Core Foundation是一个库,有一套编程接口,概念上是从基于Objective-C的基础框架派生的,但是用C语言实现。 为此,Core Foundation使用C语言实现了一个有限的对象模型。Core Foundation定义了封装数据和函数的不透明类型,以下简称为“ objects”

Core Foundation对象的编程接口的设计易于使用和重用。 在一般水平上,Core Foundation

  • 支持在各种框架和库之间共享代码和数据
  • 使某种程度的操作系统独立性成为可能
  • 支持Unicode字符串的国际化
  • 提供通用的API和其他有用的功能,包括插件体系结构,XML属性列表和首选项

Core Foundation使OS X上的不同框架和库共享代码和数据成为可能。应用程序、库和框架可以定义在其外部接口中包含Core Foundation类型的C例程;他们可以通过这些接口将数据(作为Core Foundation对象)彼此通信。

Core Foundation还提供了某些服务和Cocoa’s Foundation框架之间的“toll-free bridging”“toll-free bridging”使您可以将Cocoa对象替换为函数参数中的Core Foundation对象,反之亦然。

一些Core Foundation类型和功能是在不同操作系统上具有特定实现的东西的抽象。使用这些API的代码因此更容易移植到不同的平台。

日期和数字类型抽象的时间工具,并提供绝对和公历时间之间转换的便利。它也抽象数值,并提供在这些值的不同内部表示之间转换的工具。

Core Foundation给应用程序开发带来的主要好处之一就是国际化支持。通过其字符串对象,Core Foundation实现跨所有OS X和Cocoa编程接口实现了简单,健壮和一致的国际化。这种支持的基本部分是一个CFString类型的实例,它表示一个16位的Unicode字符数组。一个CFString对象足够灵活,可以容纳兆字节的字符,并且足够简单和低级,以便在所有用于传递字符数据的编程接口中使用。它的性能与标准C字符串相比没有太大的不同。

您应该阅读本文档以了解Core Foundation的基本设计原则,以及Core Foundation对象如何与Cocoa(Touch)对象进行交互。


Organization of This Document - 文档的组织

这些概念和任务讨论了Core Foundation中使用的对象模型:

另外,还有其他非对象类型,以及在使用Core Foundation之前应该熟悉的API约定:

参考文章

后记

本篇已结束,后面更精彩~~~

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • iOS的系统架构分为四个层次:核心操作系统层(Core OS layer)、核心服务层(Core Services...
    zhaihongxia阅读 2,949评论 0 3
  • 在iOS中框架是一个目录,包含了共享资源库,用于访问该资源库中储存的代码的头文件,以及图像、声音文件等其他资源。共...
    ch123阅读 1,805评论 0 1
  • 在iOS中框架是一个目录,包含了共享资源库,用于访问该资源库中储存的代码的头文件,以及图像、声音文件等其他资源。共...
    nkk阅读 622评论 0 1
  • 6转载-->>IOS框架和服务 在iOS中框架是一个目录,包含了共享资源库,用于访问该资源库中储存的代码的头文件,...
    李小六_阅读 3,641评论 2 24
  • 本文翻译: Core Foundation design concept 简介 Core Foundation 是...
    whitekite阅读 996评论 0 4