《ObjectiveC基础教程(第2版)》
基本信息
原书名:Learn objectiveC on the mac:For OSX and iOS
作者: (美)克纳斯特 马利克 达尔林普尔
译者: 周庆成
丛书名: 图灵程序设计丛书
出版社:人民邮电出版社
ISBN:9787115314581
上架时间:2013-4-28
出版日期:2013 年5月
开本:16开
页码:1
版次:2-1
所属分类:计算机 > 软件与程序设计 > 综合 > 高级程序语言设计

更多关于 》》》《ObjectiveC基础教程(第2版)》
内容简介
计算机书籍
ObjectiveC 是扩展C 的面向对象编程语言,也是iPhone 开发用到的主要语言。《ObjectiveC基础教程(第2版)》结合理论知识与示例程序,全面而系统地介绍了ObjectiveC 编程的相关内容,包括ObjectiveC 在C 的基础上引入的特性、Cocoa 工具包的功能及框架,以及继承、复合、源文件组织等众多重要的面向对象编程技术。附录中还介绍了如何从其他语言过渡到ObjectiveC。
《ObjectiveC基础教程(第2版)》适合各类开发人员阅读。
目录
《objectivec基础教程(第2版)》
第1章 启程 1
1.1 预备知识 1
1.2 历史 1
1.3 内容简介 2
1.4 准备工作 3
1.5 小结 5
第2章 对c的扩展 6
2.1 最简单的objective-c程序 6
2.2 解构hello objective-c程序 10
2.2.1 #import语句 10
2.2.2 框架 11
2.2.3 nslog()和@"字符串" 11
2.3 布尔类型 14
2.4 小结 18
第3章 面向对象编程的基础知识 19
3.1 间接 19
3.1.1 变量与间接 20
3.1.2 使用文件名的间接 22
3.2 在面向对象编程中使用间接 28
.3.2.1 过程式编程 28
3.2.2 实现面向对象编程 34
3.3 有关术语 37
3.4 objective-c语言中的oop 38
3.4.1 @interface部分 38
3.4.2 @implementation部分 41
3.4.3 实例化对象 43
3.4.4 扩展shapes-object程序 45
3.5 小结 47
第4章 继承 48
4.1 为何使用继承 48
4.2 继承的语法格式 51
4.3 继承的工作机制 53
4.3.1 方法调度 54
4.3.2 实例变量 55
4.4 重写方法 57
4.5 小结 59
第5章 复合 61
5.1 什么是复合 61
5.2 自定义nslog() 62
5.3 存取方法 65
5.3.1 设置engine属性的存取方法 66
5.3.2 设置tires属性的存取方法 67
5.3.3 car类代码的其他变化 68
5.4 扩展carparts程序 69
5.5 复合还是继承 70
5.6 小结 71
第6章 源文件组织 72
6.1 拆分接口和实现 72
6.2 拆分car程序 75
6.3 使用跨文件依赖关系 77
6.3.1 重新编译须知 78
6.3.2 让汽车跑一会儿 79
6.3.3 导入和继承 81
6.4 小结 82
第7章 深入了解xcode 84
7.1 窗口布局一览 84
7.2 改变公司名称 85
7.3 使用编辑器的技巧 86
7.4 在xcode的帮助下编写代码 87
7.4.1 首行缩进(美观排版) 88
7.4.2 代码自动完成 88
7.4.3 括号配对 90
7.4.4 批量编辑 91
7.4.5 代码导航 94
7.4.6 集中精力 96
7.4.7 使用导航条 97
7.4.8 获取信息 98
7.5 调试 101
7.5.1 暴力测试 101
7.5.2 xcode的调试器 101
7.5.3 精巧的调试符号 101
7.5.4 开始调试 101
7.5.5 检查程序 104
7.6 备忘表 105
7.7 小结 106
第8章 foundation kit介绍 107
8.1 稳固的foundation 107
8.2 使用项目样本代码 107
8.3 一些有用的数据类型 108
8.3.1 范围 108
8.3.2 几何数据类型 109
8.4 字符串 109
8.4.1 创建字符串 110
8.4.2 类方法 110
8.4.3 关于大小 111
8.4.4 字符串比较 111
8.4.5 不区分大小写的比较 112
8.4.6 字符串内是否还包含别的字符串 113
8.4.7 可变性 114
8.5 集合大家族 115
8.5.1 nsarray 115
8.5.2 可变数组 119
8.5.3 枚举 120
8.5.4 快速枚举 121
8.5.5 nsdictionary 122
8.5.6 请不要乱来 124
8.6 其他数值 124
8.6.1 nsnumber 124
8.6.2 nsvalue 125
8.6.3 nsnull 126
8.7 示例:查找文件 126
8.8 小结 130
第9章 内存管理 131
9.1 对象生命周期 131
9.1.1 引用计数 132
9.1.2 对象所有权 134
9.1.3 访问方法中的保留和释放 134
9.1.4 自动释放 136
9.1.5 所有对象放入池中 136
9.1.6 自动释放池的销毁时间 137
9.1.7 自动释放池的工作流程 138
9.2 cocoa的内存管理规则 140
9.2.1 临时对象 141
9.2.2 拥有对象 141
9.2.3 垃圾回收 143
9.2.4 自动引用计数 144
9.3 异常 154
9.3.1 与异常有关的关键字 155
9.3.2 捕捉不同类型的异常 156
9.3.3 抛出异常 156
9.3.4 异常也需要内存管理 157
9.3.5 异常和自动释放池 158
9.4 小结 159
第10章 对象初始化 160
10.1 分配对象 160
10.1.1 初始化对象 160
10.1.2 编写初始化方法 161
10.1.3 初始化时要做些什么 162
10.2 便利初始化函数 163
10.3 更多部件改进 164
10.3.1 tire类的初始化 165
10.3.2 更新main()函数 166
10.3.3 清理car类 168
10.4 car类的内存清理(垃圾回收方式和arc方式) 171
10.5 指定初始化函数 172
10.5.1 子类化问题 173
10.5.2 tire类的初始化函数改进 后的版本 175
10.5.3 添加allweatherradial类 的初始化函数 175
10.6 初始化函数规则 176
10.7 小结 176
第11章 属性 177
11.1 使用属性值 177
11.1.1 简化接口代码 178
11.1.2 简化实现代码 179
11.1.3 点表达式的妙用 182
11.2 属性扩展 183
11.2.1 名称的使用 186
11.2.2 只读属性 188
11.2.3 自己动手有时更好 189
11.2.4 特性不是万能的 189
11.3 小结 189
第12章 类别 191
12.1 创建类别 191
12.1.1 开始创建类别 192
12.1.2 @interface部分 193
12.1.3 @implementation部分 194
12.1.4 类别的缺陷 195
12.1.5 类别的优势 196
12.1.6 类扩展 196
12.2 利用类别分散实现代码 197
12.3 通过类别创建前向引用 200
12.4 非正式协议和委托类别 201
12.4.1 itunesfinder项目 202
12.4.2 委托和类别 204
12.4.3 响应选择器 205
12.4.4 选择器的其他应用 206
12.5 小结 206
第13章 协议 207
13.1 正式协议 207
13.1.1 声明协议 207
13.1.2 采用协议 208
13.1.3 实现协议 209
13.2 复制 209
13.2.1 复制engine 210
13.2.2 复制tire 211
13.2.3 复制car 212
13.2.4 协议和数据类型 215
13.3 objective-c 2.0的新特性 215
13.4 委托方法 216
13.5 小结 218
第14章 代码块和并发性 219
14.1 代码块 219
14.1.1 代码块和函数指针 219
14.1.2 objective-c变量 223
14.2 并发性 224
14.2.1 同步 224
14.2.2 队列也要内存管理 227
14.2.3 操作队列 229
14.3 小结 231
第15章 appkit简介 232
15.1 构建项目 232
15.2 创建委托文件的@interface部分 234
15.3 interface builder 235
15.4 设计用户界面 236
15.5 创建连接 239
15.5.1 连接输出口(iboutlet) 239
15.5.2 连接操作(ibaction) 240
15.6 应用程序委托的实现 242
15.7 小结 244
第16章 uikit简介 245
16.1 视图控制器 249
16.2 小结 263
第17章 文件加载与保存 264
17.1 属性列表 264
17.1.1 nsdate 264
17.1.2 nsdata 265
17.1.3 写入和读取属性列表 266
17.1.4 修改对象类型 267
17.2 编码对象 268
17.3 小结 273
第18章 键/值编码 274
18.1 入门项目 274
18.2 kvc简介 276
18.3 键路径 277
18.4 整体操作 278
18.4.1 休息一下 279
18.4.2 快速运算 282
18.5 批处理 284
18.6 nil仍然可用 285
18.7 处理未定义的键 286
18.8 小结 287
第19章 使用静态分析器 288
19.1 静态工作 288
19.1.1 开始分析 288
19.1.2 协助分析器 292
19.1.3 了解更多 293
19.2 小结 295
第20章 nspredicate 296
20.1 创建谓词 296
20.2 计算谓词 297
20.3 数组过滤器 298
20.4 格式说明符 299
20.5 运算符 300
20.5.1 比较和逻辑运算符 300
20.5.2 数组运算符 301
20.6 有self就足够了 302
20.7 字符串运算符 304
20.8 like运算符 304
20.9 结语 305
附录 从其他语言转向objective-c 306
索引 314
相关推荐
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
ACM动态规划模板-区间修改线段树问题模板
# 踏入C语言的奇妙编程世界 在编程的广阔宇宙中,C语言宛如一颗璀璨恒星,以其独特魅力与强大功能,始终占据着不可替代的地位。无论你是编程小白,还是有一定基础想进一步提升的开发者,C语言都值得深入探索。 C语言的高效性与可移植性令人瞩目。它能直接操控硬件,执行速度快,是系统软件、嵌入式开发的首选。同时,代码可在不同操作系统和硬件平台间轻松移植,极大节省开发成本。 学习C语言,能让你深入理解计算机底层原理,培养逻辑思维和问题解决能力。掌握C语言后,再学习其他编程语言也会事半功倍。 现在,让我们一起开启C语言学习之旅。这里有丰富教程、实用案例、详细代码解析,助你逐步掌握C语言核心知识和编程技巧。别再犹豫,加入我们,在C语言的海洋中尽情遨游,挖掘无限可能,为未来的编程之路打下坚实基础!
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
本项目为Python语言开发的PersonRelationKnowledgeGraph设计源码,总计包含49个文件,涵盖19个.pyc字节码文件、12个.py源代码文件、8个.txt文本文件、3个.xml配置文件、3个.png图片文件、2个.md标记文件、1个.iml项目配置文件、1个.cfg配置文件。该源码库旨在构建一个用于表示和查询人物关系的知识图谱系统。
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
rtsp实时预览接口URL:/evo-apigw/admin/API/MTS/Video/StartVideo HLS、FLV、RTMP实时预览接口方式 :接口URL/evo-apigw/admin/API/video/stream/realtime 参数名 必选 类型 说明 data true string Json串 +channelId true string 视频通道编码 +streamType true string 码流类型:1=主码流, 2=辅码流,3=辅码流2 +type true string 协议类型:hls,hlss,flv,flvs,ws_flv,wss_flv,rtmp hls:http协议,m3u8格式,端口7086; hlss:https协议,m3u8格式,端口是7096; flv:http协议,flv格式,端口7886; flvs:https协议,flv格式,端口是7896; ws_flv:ws协议,flv格式,端口是7886; wss_flv:wss协议,flv格式,端口是7896; rtmp:rtmp协议,端口是1975;
Simulink永磁风机飞轮储能系统二次调频技术研究:频率特性分析与参数优化,Simulink永磁风机飞轮储能二次调频技术:系统频率特性详解及参数优化研究参考详实文献及两区域系统应用,simulink永磁风机飞轮储能二次调频,系统频率特性如下,可改变调频参数改善频率。 参考文献详细,两区域系统二次调频。 ,核心关键词: 1. Simulink 2. 永磁风机 3. 飞轮储能 4. 二次调频 5. 系统频率特性 6. 调频参数 7. 改善频率 8. 参考文献 9. 两区域系统 以上关键词用分号(;)分隔,结果为:Simulink;永磁风机;飞轮储能;二次调频;系统频率特性;调频参数;改善频率;参考文献;两区域系统。,基于Simulink的永磁风机与飞轮储能系统二次调频研究:频率特性及调频参数优化
MATLAB驱动的ASR防滑转模型:PID与对照控制算法对比,冰雪路面条件下滑移率与车速轮速对照展示,MATLAB驱动的ASR防滑转模型:PID与对照控制算法对比,冰雪路面条件下滑移率与车速轮速对照图展示,MATLAB驱动防滑转模型ASR模型 ASR模型驱动防滑转模型 ?牵引力控制系统模型 选择PID控制算法以及对照控制算法,共两种控制算法,可进行选择。 选择冰路面以及雪路面,共两种路面条件,可进行选择。 控制目标为滑移率0.2,出图显示车速以及轮速对照,出图显示车辆轮胎滑移率。 模型简单,仅供参考。 ,MATLAB; ASR模型; 防滑转模型; 牵引力控制系统模型; PID控制算法; 对照控制算法; 冰路面; 雪路面; 控制目标; 滑移率; 车速; 轮速。,MATLAB驱动的ASR模型:PID与对照算法在冰雪路面的滑移率控制研究
芯片失效分析方法介绍 -深入解析芯片故障原因及预防措施.pptx
4131_127989170.html
内容概要:本文提供了一个全面的PostgreSQL自动化部署解决方案,涵盖智能环境适应、多平台支持、内存与性能优化以及安全性加强等重要方面。首先介绍了脚本的功能及其调用方法,随后详细阐述了操作系统和依赖软件包的准备过程、配置项的自动生成机制,还包括对实例的安全性和监控功能的强化措施。部署指南给出了具体的命令操作指导,便于新手理解和执行。最后强调了该工具对于不同硬件条件和服务需求的有效应对能力,特别是针对云计算环境下应用的支持特点。 适合人群:对PostgreSQL集群运维有一定基础并渴望提高效率和安全性的数据库管理员及工程师。 使用场景及目标:本脚本能够帮助企业在大规模部署时减少人工介入时间,确保系统的稳定性与高性能,适用于各类需要稳定可靠的数据库解决方案的企业或机构,特别是在大数据量和高并发事务处理场合。 其他说明:文中还提及了一些高级功能如自动备份、流复制等设置步骤,使得该方案不仅可以快速上线而且能满足后续维护和发展阶段的要求。同时提到的技术性能数据也为用户评估其能否满足业务需求提供了直观参考。
房地产开发合同[示范文本].doc
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
工程技术承包合同[示范文本].doc
蓝桥杯开发赛【作品源码】
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
CVPR2023复现技术:多数据集验证下的YOLOX、YOLOv5及YOLOV7检测涨点助力器,CVPR2023复现实验助力检测涨点,验证了YOLOX、YOLOv5及YOLOV7在多个数据集上的有效性,cvpr2023复现,助力检测涨点,YOLOX YOLOv5 YOLOV7均有效,再多个数据集验证有效 ,cvpr2023复现; 助力检测涨点; YOLOX有效; YOLOv5有效; YOLOV7有效; 多数据集验证有效,CVPR2023复现成功:多模型检测涨点验证有效