网站颜色:

iOS开发:从零基础到精通 史昕 汤海波 闫珍 清华大学出版社 9787302478898.

  • 产品名称:iOS开发:从零基础到精通
  • 书名:iOS开发:从零基础到精通
  • 作者:史昕、汤海波、闫珍
  • 定价:150.00元
  • 书名:iOS开发:从零基础到精通
  • 开本:16开
  • 是否是套装:否
  • 出版社名称:清华大学出版社

 书名: iOS开发:从零基础到精通
 出版社:  清华大学出版社
 出版日期:  (咨询特价)
 ISBN号: 9787302478898

本书适合 iOS 开发零基础的读者阅读。全含六大部分,共24章,涵盖了针对 iOS 开发入门所需要掌握的核 

心内容,同时紧扣 iOS 开发的最新发展趋势,以 Objective-C 语言为基础,并引入了 Swift 语言以及 React Native 的介 

绍。通过本书的系统学习,能够满足一般软件公司对 iOS 开发工程师的岗位要求。 

第一部分:Objective-C 语言基础。针对初学者介绍iOS开发使用最广泛、成熟度最高的 Objective-C 语言,简单扼 

要地介绍了在实际开发中最常使用的语法内容。第二部分:iOS 开发入门。基于UIKit框架,介绍了iOS开发中需要优 

先掌握的基础类,包括基础 UI 控件、高级 UI 控件、控制器、手势等。第三部分:iOS 开发进阶。着重介绍多线程、 

网络、存储、绘图、设计模式、设备、地图、推送、证书以及应用发布等进阶技术。第四部分:常用框架以及辅助工 

具介绍。介绍在实际开发中最常使用的辅助开发工具以及框架。第五部分:Swift 语言基础。以 Swift 3.0 为基础,介 

绍 Swift 语言的基本使用以及语法知识。第六部分:React Native 基础。重点介绍了 React Native 的环境部署、基本概 

念以及常用框架的使用方法等内容。 

本书适合 iOS 开发新手、iOS 程序员使用,也可以作为相关培训机构和大专院校教学用书。

本书面向学习iOS开发的零基础读者。本书从实际开发的角度,提炼出所需要的iOS核心知识,让读者在短时间内有的放矢地掌握iOS开发的核心技能。为了提升读者的学习效率,本书配套提供由作者亲自录制的教学视频,针对每个章节的核心内容进行讲解,方便读者领会并掌握各个知识点。

本书共包括5个部分,涵盖了开发语言、iOS专业知识、常用工具等各个方面。本书的内容是作者多年来从事iOS开发的经验提炼与总结,是一本既全面立体,又难度适中,且紧扣实践的书籍。

第1部分 

Objective-C语言基础 

第 1 章 

环境搭建

1.1 Xcode 简介 3 

1.2 创建 App 应用 3 

1.2.1 安装 Xcode 3 

1.2.2 使用 Xcode 创建 App .4 

1.2.3 Xcode 开发界面介绍 5 

1.3 程序调试 .6 

1.3.1 App 运行状态监控 6 

1.3.2 UI 界面分析 6 

1.3.3 断点调试 .7 

1.4 Xcode 常用快捷键 8 

1.5 常用插件 .9 

1.5.1 苹果封锁第三方插件的原因 .9 

1.5.2 源码编辑器扩展 .9 

1.6 快捷代码段 .10 

1.6.1 如何创建代码段 .10 

1.6.2 常用代码段 .11 

第 2 章 

数据类型与表达式

13 

2.1 数据类型与常量 .13 

2.1.1 基本数据类型 .13 

2.1.2 限定词 .15 

2.1.3 id 与 instancetype 17 

2.2 算术表达式 .18 

2.2.1 基本运算符 .18 

2.2.2 数据类型转换 .20 

2.3 循环结构 .22 

2.3.1 for 循环 22 

2.3.2 for-in 循环 .24 

2.3.3 while 循环 .26 

目 录 

 

iOS开发:从零基础到精通 

2.3.4 break 与 continue 28 

2.4 选择结构 .29 

2.4.1 if 语句 29 

2.4.2 switch 语句 32 

2.4.3 条件运算符 / 三目运算符 .35 

2.5 typedef 语句 36 

第 3 章 

类、对象与方法

 38 

3.1 类 .38 

3.1.1 类的定义 .38 

3.1.2 类的继承 .40 

3.2 属性 .42 

3.2.1 属性的定义 .42 

3.2.2 公有属性与私有属性 44 

3.2.3 属性关键字 .45 

3.3 方法 .48 

3.3.1 方法的定义 .48 

3.3.2 方法的调用 .49 

3.3.3 方法的重写 .52 

3.4 对象 .54 

3.4.1 创建对象 .54 

3.4.2 对象操作 .57 

3.5 变量 .60 

3.5.1 局部变量 .60 

3.5.2 全局变量 .61 

3.5.3 静态变量 .64 

3.5.4 const 关键字 .66 

第 4 章 

Foundation 框架

. 69 

4.1 Foundation 框架简介 .69 

4.2 字符串类 .69 

4.2.1 不可变字符串 NSString 69 

4.2.2 可变字符串 NSMutableString .74 

4.3 数组类 .76 

4.3.1 不可变数组 NSArray .76 

4.3.2 可变数组 NSMutableArray .79 

4.4 字典类 .81 

4.4.1 不可变字典 NSDictionary .81 

4.4.2 可变字典 NSMutableDictionary 84 

4.5 NSNumber 类 86 

 

目录 

4.6 NSDate 类 .88 

4.7 NSFileManager 类 92 

4.7.1 文件操作 .92 

4.7.2 目录操作 .96 

4.7.3 枚举目录中的内容 98 

4.7.4 文件的读取与写入 100 

4.8 NSURL 类 .102 

4.9 NSBundle 类 .103 

第 5 章 

Objective-C 语言特性

. 107 

5.1 代码块 .107 

5.1.1 Block 简介 .107 

5.1.2 Block 的参数与返回值 109 

5.1.3 操作 Block 外部的变量 . 112 

5.1.4 Block 回调 . 114 

5.2 分类 . 116 

5.3 协议 . 118 

5.3.1 协议简介 . 118 

5.3.2 代理 . 119 

5.4 KVC .120 

5.4.1 使用 KVC 赋值取值 120 

5.4.2 字典转模型 122 

5.4.3 修改 readonly 的属性以及私有属性 123 

5.5 KVO 125 

第 6 章 

Objective-C 进阶

 128 

6.1 对象复制 .128 

6.1.1 浅复制与深复制 128 

6.1.2 可变对象复制与不可变对象复制 129 

6.1.3 自定义对象复制 135 

6.2 内存管理 .137 

6.3 预编译指令 .139 

6.3.1 宏定义 .139 

6.3.2 #include、#import 与 @class 142 

6.3.3 条件编译 .143 

6.4 NSLog() 函数 145 

6.4.1 NSLog() 函数基本使用 .145 

6.4.2 定制输入日志的格式 146 

6.5 结构 .148 

6.5.1 结构的定义与基本使用 148 

 

iOS开发:从零基础到精通 

6.5.2 结构的嵌套 150 

第2部分 

iOS开发基础 

第 7 章 

基础 UI 控件

. 155 

7.1 UIKit 框架 .155 

7.2 视图 UIView .156 

7.2.1 UIView 简介 .156 

7.2.2 视图 UIView 的外观 159 

7.2.3 视图 UIView 的形变 162 

7.2.4 视图 UIView 的层次关系 163 

7.2.5 视图 UIView 的动画 166 

7.2.6 响应用户交互事件 167 

7.2.7 内容模式 contentMode 170 

7.2.8 图片拉伸 .172 

7.2.9 使用代码创建自定义 UIView .175 

7.2.10 使用 XIB 创建自定义 UIView 177 

7.2.11 控件改变坐标系(convertRect:) 180 

7.3 图片控件 UIImageView 181 

7.3.1 基本使用 .181 

7.3.2 常用操作 .183 

7.3.3 帧动画功能 185 

7.4 按钮控件 UIButton .186 

7.4.1 基本使用 .186 

7.4.2 按钮的创建 188 

7.4.3 调整图标与标题的位置 190 

7.5 文本控件 UILabel .192 

7.5.1 UILabel 简介 192 

7.5.2 常用的 UILabel 使用场景 .194 

7.6 提示框控件 .195 

7.7 文本输入框 UITextField 198 

7.7.1 UITextField 的基本属性 198 

7.7.2 UITextField 的代理方法简介 201 

7.7.3 UITextField 的代理方法实例之键盘回收 203 

7.7.4 UITextField 的代理方法实例之字数限制 205 

第 8 章 

高级 UI 控件

. 207 

8.1 滚动视图 UIScrollView .207 

8.1.1 UIScrollView 基本使用 .207 

8.1.2 UIScrollView 常用代理方法的实现 .209 

 

目录 

8.1.3 视图的缩放功能 212 

8.2 表视图 UITableView 214 

8.2.1 UITableView 基本介绍 214 

8.2.2 UITableView 的数据源方法 217 

8.2.3 了解单格 UITableViewCell .219 

8.2.4 UITableView 创建示例 220 

8.2.5 UITableView 代理方法之点击单格 222 

8.2.6 UITableView 代理方法之编辑单格 224 

8.2.7 UITableViewCell 性能优化 .227 

8.2.8 分段 Section .228 

8.2.9 分段 Section 实现示例 231 

8.2.10 自定义 Cell .235 

8.2.11 Cell 高度的设置 .238 

8.2.12 动态调整 Cell 高度(self-sizing) .238 

8.2.13 动态调整 Cell 高度(代码) 

240 

8.2.14 UITableView+FDTemplateLayoutCell 计算 Cell 高度 .244 

8.2.15 改变 Cell 位置 247 

8.2.16 UITableView 的 Header 和 Footer .247 

8.2.17 去除多余的单格分割线 248 

8.3 集合视图 UICollectionView 249 

8.3.1 UICollectionView 简介 249 

8.3.2 UICollectionView 数据源协议 DataSource 252 

8.3.3 最简单的集合视图实现 253 

8.3.4 UICollectionView 代理协议方法简介 255 

8.3.5 UICollectionView 代理方法实例 256 

8.3.6 UICollectionViewFlowLayout 简介 257 

8.3.7 UICollectionViewFlowLayout 使用实例 259 

8.3.8 UICollectionViewDelegateFlowLayout 类的代理方法实现 262 

8.3.9 自定义 Cell .265 

8.4 手势 UIGestureRecognizer 267 

8.4.1 UIGestureRecognizer 简介 267 

8.4.2 点击手势 UITapGestureRecognizer 269 

8.4.3 捏合与旋转手势 UIPinchGestureRecognizer .270 

8.4.4 滑动手势 UISwipeGestureRecognizer 273 

8.4.5 拖动手势 UIPanGestureRecognizer 275 

8.4.6 长按手势 UILongPressGestureRecognizer276 

第 9 章 

控制器

 278 

9.1 控制器 UIViewController 278 

9.1.1 控制器简介以及创建控制器 278 

 

iOS开发:从零基础到精通 

10 

9.1.2 使用 XIB 以及 Storyboard 创建控制器 279 

9.1.3 控制器的周期 283 

9.1.4 使用 Storyboard 切换控制器 285 

9.1.5 使用代码切换控制器 287 

9.1.6 控制器嵌套 288 

9.2 导航控制器 UINavigationController .291 

9.2.1 导航控制器简介 291 

9.2.2 控制器跳转 295 

9.2.3 子控制器的管理 295 

9.2.4 UINavigationBar 296 

9.2.5 barStyle 属性 297 

9.2.6 barTintColor 与 tintColor .298 

9.2.7 导航栏设置背景图片 299 

9.2.8 UINavigationItem .300 

9.2.9 UINavigationItem 定制示例 302 

9.2.10 UINavigationItem 显示原始图片样式 304 

9.2.11 UINavigationController 的代理方法 .304 

9.2.12 顺传数据 .305 

9.2.13 使用代理逆传数据 307 

9.2.14 使用通知逆传数据 309 

9.2.15 使 Block 逆传数据 .310 

9.2.16 工具栏 toolBar . 311 

9.3 UITabBarController .313 

9.3.1 UITabBarController 的常用属性和方法 .313 

9.3.2 UITabBar 的常用属性和方法 .314 

9.3.3 UITabBarItem 的常用属性和方法 315 

9.3.4TabBar 实现 .316 

9.3.5 UITabBarController 的代理协议 .318 

9.4 UIWindow、UIView 与 UIViewController 关系 .319 

9.4.1 概念简介 .319 

9.4.2 关系描述 .320 

第 10 章 

其他 UI 控件

. 322 

10.1 WKWebView .322 

10.1.1 WKWebView 简介 .322 

10.1.2 WKWebView 的基本使用——加载网页 .324 

10.1.3 网页浏览控制 325 

10.1.4 加载本地文件 328 

10.1.5 WKWebView 代理协议之 WKNavigationDelegate .330 

10.2 UITextView .330 

 

11 

目录 

10.2.1 UITextView 的基本使用 330 

10.2.2 UITextView 的代理方法 332 

10.3 UIPageControl .333 

10.3.1 UIPageControl 介绍 .333 

10.3.2 UIPageControl 实际应用 .334 

10.4 UIPickerView 338 

10.4.1 UIPickerView 简介 338 

10.4.2 UIPickerView 的基本使用 340 

10.4.3 相互依赖的多列选择器 342 

10.5 UISilder .345 

10.5.1 UISlider 基本介绍 .345 

10.5.2 UISlider 实例 .347 

10.6 UIDatePicker .349 

10.6.1 UIDatePicker 基本介绍 .349 

10.6.2 UIDatePicker 基本使用 .349 

10.7 UISegmentedControl 351 

10.7.1 UISegmentedControl 简介 .351 

10.7.2 UISegmentedControl 实例 .352 

第3部分 

iOS开发进阶 

第 11 章 

多线程

 359 

11.1 线程基础知识 .359 

11.2 GCD .362 

11.2.1 GCD 基本概念介绍 .362 

11.2.2 队列与任务组合 363 

11.2.3 线程间通信 369 

11.2.4 队列组 dispatch group 371 

11.2.5 延迟执行操作 373 

11.3 NSOperation 374 

11.3.1 NSOperation 基本使用 374 

11.3.2 线程间通信 379 

11.3.3 任务间的执行依赖 380 

第 12 章 

网络

. 382 

12.1 网络开发基本概念介绍 382 

12.2 常用网络协议之 HTTP .383 

12.3 网络请求之 GET、POST 请求 384 

12.4 AFNetworking 框架介绍 .385 

12.5 聚合数据 API 简介 387 

 

iOS开发:从零基础到精通 

12 

12.6 GET 请求与 POST 请求使用示例 .389 

12.7 JSON 和 XML 简单介绍 .391 

第 13 章 

数据持久化

. 394 

13.1 沙盒 .394 

13.1.1 沙盒基础 .394 

13.1.2 在 Mac 上查看沙盒目录 .396 

13.2 Plist 文件 .397 

13.2.1 Plist 简介 .397 

13.2.2 Plist 文件的读取 399 

13.2.3 Plist 文件的写入 400 

13.2.4 操作实例 .402 

13.3 偏好设置 NSUserDefaults .406 

13.3.1 NSUserDefaults 简介 .406 

13.3.2 读写示例 .407 

13.4 归档 .409 

13.4.1 基本使用 .409 

13.4.2 单个对象归档 / 解档 .410 

13.4.3 自定义对象归档 / 解档 .412 

13.4.4 归档多个自定义对象 416 

13.4.5 子类对象的归档 419 

13.4.6 归档多个不同类型的对象 422 

13.5 SQLite .424 

13.5.1 数据库的操作 424 

13.5.2 表的操作 .427 

13.5.3 数据记录的操作 430 

13.6 FMDB 433 

13.6.1 基本介绍 .433 

13.6.2 更新操作与查询操作 436 

13.6.3 线程安全 .438 

13.7 Core Data .439 

13.7.1 概念简介 .439 

13.7.2 使用示例 .440 

13.8 Realm .445 

13.8.1 Realm 基本介绍 .445 

13.8.2 Realm 的安装 .449 

13.8.3 常用属性与方法 451 

13.8.4 Realm 使用示例 .453 

 

13 

目录 

第 14 章 

绘图和动画

. 457 

14.1 核心绘画 .457 

14.1.1 核心绘画的基本概念 457 

14.1.2 贝塞尔路径 458 

14.1.3 绘图方法和步骤 460 

14.1.4 常见图形的绘制方法 461 

14.2 UIImage 绘图应用 .464 

14.2.1 绘制图片 .464 

14.2.2 添加水印 .467 

14.2.3 裁剪圆形图片 470 

14.2.4 截屏 .473 

14.3 CALayer 474 

14.3.1 CALayer 简介 474 

14.3.2 iOS 开发中的坐标系 .477 

14.3.3 动画属性 .481 

14.4 核心动画 .482 

14.4.1 核心动画简介 482 

14.4.2 动画的实现步骤 484 

14.4.3 CAPropertyAnimiation 属性动画 485 

14.4.4 CABasicAnimiation 基本动画 .486 

14.4.5 CAKeyframeAnimation 关键帧动画 .487 

14.4.6 CASpringAnimation 簧动画 489 

14.4.7 CAAnimationGroup 动画组 490 

14.4.8 CATransition 转场动画 492 

第 15 章 

设计模式

 495 

15.1 iOS 下的 MVC 设计模式 495 

15.2 单例模式 .497 

15.3 iOS 下的 MVVM 设计模式 499 

第 16 章 

自动布局

 502 

16.1 自动布局简介 .502 

16.2 Masonry .505 

第 17 章 

设备调用

 511 

17.1 UIDevice 类  511 

17.1.1 获取设备基本信息  511 

17.1.2 获取电池信息 512 

17.1.3 接近传感器 514 

 

iOS开发:从零基础到精通 

14 

17.1.4 方向传感器 515 

17.2 位置应用 .517 

17.2.1 CoreLocation 框架简介 .517 

17.2.2 CoreLocation 框架的基本使用 .519 

17.2.3 地理信息编码简介 522 

17.2.4 CLGeocoder 应用案例 1 523 

17.2.5 CLGeocoder 应用案例 2 526 

17.3 地图应用 .528 

17.3.1 MKMapView 简介 .528 

17.3.2 MKMapView 的基本使用 .530 

17.3.3 简易地图标注 531 

17.3.4 简易地图标注示例 533 

17.3.5 复杂地图标注 534 

17.3.6 复杂地图标注示例 535 

17.4 相机与相册 .537 

17.4.1 UIImagePickerController 简介 537 

17.4.2 UIImagePickerController 的使用 538 

17.5 CoreMotion 框架 540 

17.5.1 CoreMotion 基本介绍 540 

17.5.2 获取运动传感器的裸数据 543 

17.5.3 CMDeviceMotion .546 

17.6 系统应用调用 .548 

17.6.1 拨打功能 548 

17.6.2 发送短信功能 550 

17.6.3 发送邮件功能 552 

第 18 章 

证书管理与应用发布

 555 

18.1 证书管理 .555 

18.1.1 iOS 开发证书(调试证书)管理 .555 

18.1.2 iOS 发布证书创建详解 .565 

18.2 推送证书管理 .574 

18.2.1 推送调试证书 574 

18.2.2 推送生产证书 577 

18.3 App Store 应用发布 .581 

18.3.1 App Store 应用发布详解 .581 

18.3.2 App 被拒绝上架的原因解析 .590 

第 19 章 

消息推送

 593 

19.1 远程消息推送 .593 

19.1.1 极光(JPush)消息推送集成 .593 

 

15 

目录 

19.1.2 获取推送消息内容 596 

19.1.3 打开指定界面(自定义消息内容) 597 

19.1.4 管理 App 的 Badge(本地方施 599 

19.1.5 管理 App 的 Badge(远程服务器方施 600 

19.1.6 更改推送消息提示音 602 

19.2 本地消息推送(基于 iOS10 UserNotifications 框架) 

604 

19.2.1 UNNotificationRequest 类 .604 

19.2.2 UNNotificationContent 类 605 

19.2.3 UNNotificationTrigger 类.607 

19.2.4 UNUserNotificationCenterDelegate 代理协议 609 

19.2.5 示例代码 .610 

第 20 章 

其他高级知识点

 613 

20.1 App 的周期 .613 

20.2 使用 AVFoundation 框架实现扫描二维码 .618 

第4部分 

常用第三方框架与工具 

第 21 章 

常用第三方框架介绍

 623 

21.1 CocoaPods .623 

21.1.1 CocoaPods 的安装 .623 

21.1.2 使用 CocoaPods 安装 SDK .626 

21.2 高德地图 .629 

21.2.1 高德地图简介 629 

21.2.2 高德地图 SDK 的安装 630 

21.2.3 地图 SDK 简介 632 

21.2.4 绘制地图标注 634 

21.2.5 定位 SDK .636 

21.3 SDWebImage .637 

21.4 免费短信验证码 .639 

21.5 MBProgressHUD 643 

21.5.1 MBProgressHUD 简介 .643 

21.5.2 MBProgressHUD 基本使用 .645 

21.6 YYModel .649 

21.6.1 YYModel 简介 .649 

21.6.2 YYModel 使用案例 .650 

第 22 章 

常用开发工具介绍

 652 

22.1 Reveal——AppUI 界面分析 .652 

 

iOS开发:从零基础到精通 

16 

22.1.1 Reveal 使用简介 652 

22.1.2 分析任意 iOS 应用的 UI 界面 655 

22.2 Charles——网络抓包工具 657 

22.2.1 抓取 HTTP 请求(基础) 657 

22.2.2 抓取 HTTPS 请求(高级) 659 

22.3 GitHub .664 

22.3.1 GitHub 简介 .664 

22.3.2 GitHub Desktop 桌面工具的安装 .664 

22.3.3 创建仓库 .667 

22.3.4 版本控制 .670 

22.3.5 分支 branch 操作 .676 

22.3.6 冲突处理 .678 

22.3.7 团队合作 .681 

第5部分 

Swift语言基础 

第 23 章 

Swift 语言基础

 689 

23.1 Swift 简介 .689 

23.2 常量和变量 .691 

23.3 基本运算符 .693 

23.4 字符串和字符 .694 

23.5 集合类型 .700 

23.6 流程控制 .707 

23.6.1 循环语句 .707 

23.6.2 条件语句 .710 

23.6.3 控制转移语句 712 

23.7 函数基础 .715 

23.8 函数类型 .718 

23.9 闭包 .720 

(咨询特价) 枚举 .724 

(咨询特价) 类和结构体 .728 

(咨询特价) 属性 .731 

(咨询特价) 方法 .735 

(咨询特价) 下标 .738 

(咨询特价) 继承 .740 

(咨询特价) 初始化 .743 

(咨询特价) 析构 .749 

(咨询特价) 扩展 .751 

(咨询特价) 协议 .757 

(咨询特价) 泛型 .760 

 

17 

目录 

(咨询特价) 可选链 .763 

第6部分 

React Native基础 

第 24 章 

React Native 基础

. 771 

24.1 搭建 React Native 开发环境 .771 

24.2 编写 Hello World 776 

24.3 属性 Props .778 

24.4 状态 State 780 

24.5 样式 style 781 

24.6 界面布局 .784 

24.7 网络 .788 

24.8 Text 组件 .791 

24.9 Image 组件 794 

(咨询特价) Button 组件 .796 

(咨询特价) TouchableHighlight 组件 .799 

(咨询特价) TextInput 组件 .802 

(咨询特价) KeyboardAvoidingView 组件 805 

(咨询特价) ScrollView 组件 808 

(咨询特价) ListView 组件 . 811 

(咨询特价) Navigator 组件 815 

(咨询特价) TabBarIOS 组件 820 

参考文献

 824 

3.1 类 

3.1.1 类的定义 

在 Objective-C 中,每个类的定义包括两个部分 :接口(interface)和实现(implementation)。接口部 

分定义在 .h 文件中,包含类的声明、属性以及方法,主要作用是对外提供访问接口。实现部分定义在 .m 

文件中,主要用于方法的功能实现。这种定义类的方法,好处在于将公共声明(接口)与代码实现分开, 

对外屏蔽了功能实现的细节,体现了面向对象的封装特性。 

1. 

类定义简介 

类定义是一种类型的对象的原型,其声明了每个对象都具有的属性(Property),同时还定义了同一 

类的所有对象都使用的一系列方法(Method)。 

编译器为每个类创建一个可访问的对象,称为类的对象(也称为工厂对象),类方法负责创建属于该 

类的新对象。类对象是类编译后的版本,由它创建的对象叫作类的实例,创建对象的过程也常称作实例化。 

在 Objective-C 中,一个类有接口文件和实现文件两部分组成,通常放在不同的文件里面。其中 : 

. 接口文件(.h 后缀文件):主要完成类的具体声明。 

. 实现文件(.m 后缀文件):主要完成类的具体实现。 

当使用 Xcode 创建一个类时,Xcode 会自动创建 .h 和 .m 两个文件。 

2. 

接口文件 

接口文件完成类的声明,向外界提供如何使用该类,主要体现了以下 3 类信息。 

. 继承关系 :通过继承关系可以了解该类是哪个类的子类,从而可以了解可供调用的父类的方法和 

属性。 

. 属性 Property。 

. 方法 Method。 

接口部分的定义以 @interface 开始,以 @end 结束。下面的示例代码,定义了一个游戏人物的 Player 

类,这个类继承自 NSObject,其中又定义了两个人物属性 healthPoint 与 magicPoint,以及一个初始化类方 

法 player,同时又提供了两个攻击方法,一个普通攻击 normalAttack,一个魔法攻击 magicAttack。 

#import <Foundation/Foundation.h> 

@interface Player : NSObject 

@property (nonatomic,assign) int healthPoint; 

@property (nonatomic,assign) int magicPoint; 

第 3 章 

 

39 

第3章 类、对象与方法 

+(Player *)player; 

-(void) normalAttack; 

-(void) magicAttack; 

@end 

注意 :在 iOS 开发中,属性和方法的命名一般推荐使用驼峰法命名规则。驼峰法命名规则就是当属性 

名或者方法名由多个单词构成时,第一个单词以小写字母开始,之后每个单词的首字母都用大写,驼峰法 

命名规则可以提升程序的可读性。 

3. 

实现文件 

类的实现部分以 @implementation 开始,并以 @end 结束。在类的实现部分,需要使用 #import 命令, 

引用类的接口部分。 

在类的实现部分(.m 文件)中,需要对接口部分定义的方法进行实现。 

如下面实例,在类方法 Player 中,创建了 Player 对象,并且给 healthPoint/magicPoint 属性赋了初始值, 

并且定义了两个攻击方法,其中,当使用魔法攻击的时候,还会消耗自身的 magicPoint 值。 

 

本书适合 iOS 开发零基础的读者阅读。全含六大部分,共24章,涵盖了针对 iOS 开发入门所需要掌握的核 

心内容,同时紧扣 iOS 开发的最新发展趋势,以 Objective-C 语言为基础,并引入了 Swift 语言以及 React Native 的介 

绍。通过本书的系统学习,能够满足一般软件公司对 iOS 开发工程师的岗位要求。 

第一部分:Objective-C 语言基础。针对初学者介绍iOS开发使用最广泛、成熟度最高的 Objective-C 语言,简单扼 

要地介绍了在实际开发中最常使用的语法内容。第二部分:iOS 开发入门。基于UIKit框架,介绍了iOS开发中需要优 

先掌握的基础类,包括基础 UI 控件、高级 UI 控件、控制器、手势等。第三部分:iOS 开发进阶。着重介绍多线程、 

网络、存储、绘图、设计模式、设备、地图、推送、证书以及应用发布等进阶技术。第四部分:常用框架以及辅助工 

具介绍。介绍在实际开发中最常使用的辅助开发工具以及框架。第五部分:Swift 语言基础。以 Swift 3.0 为基础,介 

绍 Swift 语言的基本使用以及语法知识。第六部分:React Native 基础。重点介绍了 React Native 的环境部署、基本概 

念以及常用框架的使用方法等内容。 

本书适合 iOS 开发新手、iOS 程序员使用,也可以作为相关培训机构和大专院校教学用书。

热门设计服务