专题地址:MacOS一站式程序开发系列专题
第一部分:基础入门-学习导航
ObjectiveC-第一部分-基础入门-学习导航
第二部分:Foundation基础学习导航
- Foundation框架-13-数据对象:主要讲述NSRange, NSString, NSValue, NSNull, NSDate以及NSData对象的使用
- Foundation框架-14-数据集合:NSSet, NSArray, NSDict)以及集合过滤(NSPredicate)
- Foundation框架-15-ObjectviceC的内存管理:内存管理,了解即可,因为在5.4之后内存全部变为自动的不需要手动处理
- Foundation框架-16-文件处理一:文件目录和文件操作
- Foundation框架-16-文件处理二:文件目录和文件操作
- Foundation框架-17-数据归档与解压:文本和对象序列化操作
- Foundation框架-18-并发程序基础:并发程序入门基础
以上全是属于基础内容吧,需要越精通越好,当然了笔者描述的也只是皮毛部分。要想精通需要多练习,快速记住各个API的用法。
关于Objective开发语言
生态体系
开发Apple公司相关产品的软件时,主要有两个框架可供使用:Cocoa和Cocoa Touch。Cocoa是一个开发Mac OS系统应用的开发工具包,而Cocoa Touch工具包主要用于IOS系统应用的开发,可以简单理解为Objective-C是一种编程语言,而Cocoa是开发框架,发展至今天,Apple Develop开发体系大体如下图所示:
上图中有几点需要详细说下明:
-
. Foundation:这是一个ObjC语言的核心扩展包。它并没有内置于Objective-C语言中,也不包含任何UI元素,所以可以在不同的平台通用,大概提供了100多个扩展类;
-
. Cocoa:MacOS系统应用开发框架,它提供了丰富用户体验的UI框架,由Foundation库、用于数据管理的CoreData框架以及AppKit图形化框架组成;
-
. Cocoa Touch:IOS系统应用开发框架,它提供了丰富用户体验的UI框架,它包括Foundation库、用于数据管理的CoreData框架以及UIKit库,UIKit可以看成是简版的Appkit,同时附加了比如wifi
、gps等API; -
Swift:一种后期开发的Apple系统应用软件的开发语言,原因是作为一门比较老的语言,
Objective-C缺少很多现代语言所具备的高级特性。可以简单理解为Swift是为了弥补ObjC的缺陷而开发的一种语言,ObjC与Swift可以相互调用,所以在同一项目中可以并存; -
关于Foundation
Foundation是在早期的CoreFoundation框架的基础上开发的,开发时也可以使用CoreFoundation(但不建议),在帮助文件中以CF开头的全是CoreFoundation中的对象;
- Macos X kernel:内核以设备驱动程序的形式提供与硬件的底层通信。它负责管理系统资源,包括调度需要执行的程序、管理内存和电源,以及执行基本的I/O操作。
- Core services:核心服务提供的支持比它上面层次更加底层或更加“核心”。例如,提供对集合、网络、调试、文件管理、文件夹、内存管理、线程、时间和电源的管理。
- Application Services:应用服务层包含打印和图形渲染的支持,包括Quartz、OpenGL和Quicktime。
- Cocoa:开发框架,Cocoa包括Foundation、Core Data和AppKit框架。Foundation框架提供处理集合、字符串、内存管理、 文件系统、存档等相关的类。AppKit框架提供管理视图、窗口、文档和使Mac
开发文档
在Foundation中有125个可用的头文件(还在增加),通过import <Foundation/Foundation.h>的方式导入。为了不与其它框架的语言冲突,所有的系统类对象都以 NS 开头。
Xcode中获取
查阅Online文档
https://developer.apple.com/documentation/