前言

  • 框架是由许多类、方法、函数和文档按照一定的逻辑组织起来的集合,以使研发程序更容易。

  • Foundation 框架:为所有程序开发奠定基础的框架称为 Foundation 框架。

  • Cocoa :是指 Foundation 、Core Data 和 AppKit(Application Kit)框架。用于 Mac OS X 设备上的应用程序开发。
  • Cocoa Touch :是指 Foundation 、Core Data 和 UIKit 框架。用于 iOS 设备上的应用程序开发。

1、Foundation 框架基本结构

1.1 各类之间的层次结构 



1.2 各类功能

    Enum                                     枚举

    Struct                                   结构体
        Range
        NSRange
        NSPoint
        NSSize
        NSRect

    String                  struct           字符串
        NSString            : NSObject  

    Array                   struct           数组
        NSArray             : NSObject  

    Set                     struct           集合
        NSSet               : NSObject
        NSCountedSet        : NSMutableSet   计数集合
        NSIndexSet          : NSObject       索引集合

    Dictionary              struct           字典
        NSDictionary        : NSObject  

    NSData                  : NSObject       数据存储

    NSValue                 : NSObject       值

    NSNumber                : NSObject       数字

    NSCalendar              : NSObject       日历

    NSTimeZone              : NSObject       时区

    NSLocale                : NSObject       本地化信息

    NSDate                  : NSObject       时间

    NSEnumerator            : NSObject       迭代器

    NSTimer                 : NSObject       定时器

    NSProcessInfo           : NSObject       系统进程信息

    NSNull                  : NSObject       空值

    数据持久化
        Sandbox   沙盒
        NSBundle            : NSObject       路径
        NSURL               : NSObject       路径
        NSKeyedArchiver     : NSCoder        数据归档
        NSUserDefaults      : NSObject       数据存储
        PList     数据存储
        NSFileManager       : NSObject       文件管理
        SQLite    数据库存储

iOS - Swift Foundation 框架的更多相关文章

  1. iOS - OC Foundation 框架

    前言 框架是由许多类.方法.函数和文档按照一定的逻辑组织起来的集合,以使研发程序更容易. Foundation 框架:为所有程序开发奠定基础的框架称为 Foundation 框架. Cocoa :是指 ...

  2. 李洪强iOS之Foundation框架—字符串

    Foundation框架—字符串 一.Foundation框架中一些常用的类 字符串型: NSString:不可变字符串 NSMutableString:可变字符串 集合型: 1) NSArray:O ...

  3. Swift:Foundation框架中的NS前缀的由来

    可能大家对于著名的NS前缀的由来有一些疑问. 绝大多数这些NS前缀的类是NeXTSTEP操作系统中Foundation框架里的一部分,而该操作系统是OS X的基础. NeXTSTEP的程序员对它们的类 ...

  4. 【iOS】Foundation框架 学习笔记

    1.数组 OC数组不能存放nil值OC数组只能存放OC对象.不能存放非OC对象类型,比如int.struct.enum等 ====================================== ...

  5. iOS·UIKit & Foundation框架—Annotations & Category注解工具类

  6. Swift—Core Foundation框架-备

    Core Foundation框架是苹果公司提供一套概念来源于Foundation框架,编程接口面向C语言风格的API.虽然在Swift中调用这种C语言风格的API比较麻烦,但是在OS X和iOS开发 ...

  7. 《从零开始学Swift》学习笔记(Day 61)——Core Foundation框架之内存管理

    原创文章,欢迎转载.转载请注明:关东升的博客 在Swift原生数据类型.Foundation框架数据类型和Core Foundation框架数据类型之间转换过程中,虽然是大部分是可以零开销桥接,零开销 ...

  8. 《从零开始学Swift》学习笔记(Day60)——Core Foundation框架

    原创文章,欢迎转载.转载请注明:关东升的博客 Core Foundation框架是苹果公司提供一套概念来源于Foundation框架,编程接口面向C语言风格的API.虽然在Swift中调用这种C语言风 ...

  9. 《从零開始学Swift》学习笔记(Day60)——Core Foundation框架

    创文章,欢迎转载.转载请注明:关东升的博客   Core Foundation框架是苹果公司提供一套概念来源于Foundation框架,编程接口面向C语言风格的API.尽管在Swift中调用这样的C语 ...

随机推荐

  1. Caused by: org.hibernate.HibernateException: Connection cannot be null when 'hibernate.dialect' not set

    docs.jboss.org文档示例代码:(http://docs.jboss.org/hibernate/annotations/3.5/reference/en/html_single/) sta ...

  2. Could not write metadata for '/taiping-sol-insu-composite'.

    Could not write metadata for '/taiping-sol-insu-composite'. 这是由于删除一个项目时,没有同时在硬盘上删除该项目,而后又到硬盘文件系统中删除了 ...

  3. 【PHP设计模式 05_DanLi.php】单例模式

    <?php /** * [单例模式] * 总结:防止外部new对象:防止子类继承:防止克隆. */ header("Content-type: text/html; charset=u ...

  4. PHP实现单例模式

    <?php /** * [单例模式] * 总结:防止外部new对象:防止子类继承:防止克隆. */ header("Content-type: text/html; charset=u ...

  5. Codeforces 733C:Epidemic in Monstropolis(暴力贪心)

    http://codeforces.com/problemset/problem/733/C 题意:给出一个序列的怪兽体积 ai,怪兽只能吃相邻的怪兽,并且只有体积严格大于相邻的怪兽才能吃,吃完之后, ...

  6. JavaScript脚本语言基础(一)

    导读: JavaScript代码嵌入HTML文档 JavaScript代码运行方式 第一个实例 JavaScript的三种对话框 定义JavaScript变量 JavaScript运算符和操作符 Ja ...

  7. javaScript数组循环删除

    遍历数组循环的时候,限定条件不要写arr.length,因为数组的长度会随着删除元素的同时减小. 例如,一个原本长度为10的数组,如果采用 for(var i = 0; i< arr.lengt ...

  8. 查询SQL 对象及存储过程

    select * from database..sysobjects order by name EXEC Sp_HelpText 'Proc_Export268';

  9. C# 加密解密

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Secur ...

  10. Convert.ChangeType转换泛型的性能损失测试

    经常要传入参数包,当时一直是用泛型+ChangeType解决的.测试了下,看来这样确实慢了. 另外,可能都会认为Release发布之后会被优化掉.但测试了Release和Debug结果一样慢,比较失望 ...