本书是Objective-C指导教材,在第一版《Objective-C入门教程》的基础上进行了全面升级,不仅细化补充了很多新知识,而且针对每章都设计了阶段案例和配套练习,帮助读者巩固知识,加深学习印象。
本书共分为10章,第1章主要带大家认识Objective-C这门语言,并尝试编写第一个Objective-C程序,激发大家对Objective-C的兴趣;第2-3章讲解了面向对象的编程思想;第4章针对Objective-C特有的语法进行讲解;第5-6章讲解的是Objective-C中的内存管理机制,包括MRC和ARC。第7-9章讲解了Objective-C中的分类、延展、Block代码块和协议;第10章针对Foundation框架进行讲解,让读者为后面iOS开发奠定好扎实的基础。
本教材附有配套视频、源代码、习题、教学课件等资源,而且为了帮助初学者更好地学习本教材中的内容,还提供了在线答疑,希望得到更多读者的关注。
本书既可作为高等院校本、专科计算机相关的程序设计课程教材,也可作为iOS技术基础的培训教材,是一本适合广大计算机编程初学者的入门级教材。
特色一:化繁为简,降低初学者入门难度
本书在讲解知识点时,采用需求引入的方式,图文并茂的将一些复杂的知识点进行简化,从而降低初学者的入门难度。
特色二:目标清晰,帮助学习者掌握核心知识
本书在设定学习目标时,反复斟酌每个知识点的重要程度,非常清晰的描述了知识点的掌握程度。
特色三:内容全面,开阔程序视野范围
本书全面涵盖iOS开发过程中Objective-C的编程思想和基本语法,开阔程序视野范围,让读者在学习后续iOS开发过程中熟练使用Objective-C语法。
第1章 Objective-C入门 1.1 Objective-C概述 1.2搭接开发环境 1.2.1开发环境要求 1.2.2系统环境搭接 1.2.3 Xcode开发工具搭建 1.3开发第一个Objective-C程序 1.3.1使用Xcode开发Objective-C程序 1.3.2 Objective-C程序代码分析 1.4.3 Objective-C源码、编译代码和可执行文件 1.4 帮助文档的使用 1.4.1 帮助文档的下载安装 1.4.2 帮助文档的使用 1.5 本章小结 1.6 本章习题 第2章 面向对象编程(上) 2.1 面向对象概述 2.2 类和对象 2.2.1 类和对象之间的关系 2.2.2 类的设计 2.2.3 类的定义 2.2.4 使用Xcode创建一个类 2.2.5 类的对象的创建 2.2.6 访问对象的属性 2.3 方法 2.3.1 方法的声明实现和调用 2.3.2 方法中直接访问属性 2.3.3 对象作为方法的参数 2.3.4 对象作为方法的返回值 2.4 self的使用 2.4.1 在对象方法中使用self 2.4.2 在类方法中使用self 2.5 匿名对象 2.6 异常 2.7 阶段案例——猜拳游戏 2.8本章小结 2.9 本章习题 第3章 面向对象编程(下) 3.1 面向对象三大特征 3.2 封装 3.2.1 setter的封装 3.2.2 getter的封装 3.3 static关键字 3.4 继承 3.4.1 继承的简单使用 3.4.2 继承的特点 3.4.3 方法的重写 3.4.4 super关键字 3.5 访问修饰符 3.6 里氏替换原则 3.7 多态 3.8 description方法 3.9 阶段案例—计算器 3.10 本章小结 3.11 本章习题 第4章 Objective-C特有语法 4.1点语法 4.2 @property 4.3 @synthesize 4.4 @property增强 4.5 静态类型与动态类型 4.6 动态类型检测 4.7构造方法 4.7.1构造方法概述 4.7.2重写init构造方法 4.7.3自定义构造方法 4.8阶段案例——购票系统 4.9本章小结 4.10本章习题 第5章 内存管理 5.1内存管理概述 5.1.1引用计数器 5.1.2第一个MRC程序 5.2 单个对象的内存管理 5.3多个对象的内存管理(setter方法内存管理) 5.3.1 setter方法内存管理(一) 5.3.2 setter方法内存管理(二) 5.3.3 setter方法内存管理(三) 5.4 @property参数概述 5.4.1 @property参数之automic和nonatomic 5.4.2 @property参数之retain与assign 5.4.3 @property参数之readwrite与readonly 5.4.4 @property参数之getter与setter 5.5 自动释放池 5.6 阶段案例——微博(MRC) 5.7 本章小结 5.8 本章习题 第6章 ARC机制 6.1 ARC机制概述 6.2 ARC机制下单个对象的内存管理 6.3 @property中的strong和weak 6.4 ARC机制下的循环引用 6.5 ARC与MRC的相互兼容 6.6 阶段案例——微博(ARC) 6.7 本章小结 6.8 本章习题 第7章 分类和延展 7.1 分类(Category)概述 7.1.1 分类的简单使用 7.1.2 分类的注意细节 7.2 非正式协议 7.3 延展 7.4 本章小结 7.5 本章习题 第8章 block 8.1 block概述 8.1.1 block语法 8.1.2 block的基本使用 8.1.3使用typedef将复杂的block定义简化 8.2 block内部访问外部变量 8.3 block作为函数的参数 8.4 block作为函数的返回值 8.5 本章小结 8.6 本章习题 第9章 协议(Protocol) 9.1 协议概述 9.1.1 协议的基本使用 9.1.2 @required和@optional 9.2 协议之间的继承 9.3 协议的类型限制 9.4 阶段案例——给男生找女友 9.5 本章小结 9.6 本章习题 第10章 Foundation框架 10.1 NSString的基本使用 10.1.1 NSString的创建 10.1.2 NSString最常见的操作 10.2 NSString的其他操作 10.2.1 字符串的读写 10.2.2 字符串的比较 10.2.3 字符串的开始和结束判断 10.2.4 字符串的搜索 10.2.5 字符串的截取 10.2.6 字符串的替换 10.2.7 字符串的类型转换 10. 3 NSMutableString 10.3.1 NSMutableString概述 10.3.2 NSMutableString的使用 10.4 NSArray 10.4.1 NSArray数组的创建 10.4.2 NSArray数组的基本使用 10.4.2 NSArray数组的遍历 10.5 NSMutableArray的使用 10.6 NSDictionany 10.6.1 NSDictionary概述 10.6.2 NSDictionary字典数组的创建 10.6.3 NSDictionary的使用 10.6.4 NSDictionary字典数组的遍历 10.7 NSMutableDictionary的使用 10.8 NSFileManager 10.8.1 使用NSFileManager实现判断操作 10.8.2 使用NSFileManager获取信息 10.8.3 使用NSFileManager创建文件或文件夹 10.9 Foudation框架的结构体 10.9.1 CGPoint 10.9.2 CGSize 10.9.3 CGRect 10.10 NSValue 10.11 日期处理 10.11.1字符串与时间的相互转换 10.11.2日期计算 10.11.3得到日期的各个部分 10.12 阶段案例——通讯录 10.13 本章小结 10.14 本章习题