基本信息
- 原书名:Objective-C Developer Reference
- 原出版社: John Wiley & Sons
内容简介
计算机书籍
《好学的Objective-C》共分为4 部分。第一部分介绍了Objective-C 的基础知识,包括Objective-C 的基本语法、对象、内存管理等;第二部分深入挖掘Objective-C 提供的一些功能,包括如何使用代码块,使用键值编码和键值观察,使用协议,扩展现有类的功能,编写宏以及处理错误和异常;第三部分介绍了Foundation 框架及其相关知识;第四部分介绍了一些高级主题,包括多线程处理、Objective-C 设计模式、利用NSCoder 读写数据以及在其他平台上使用Objective-C 等内容。
《好学的Objective-C》适合对Objective-C 程序设计感兴趣的人阅读。
作译者
拥有25年的软件开发经验,是专门开发iPhone和Mac OS X 应用的Random Ideas软件公司的创始人,已有多个iPhone应用成为苹果广告中的推荐应用。此外,他还是Cocoa Touch for iPhone OS 3 Developer Reference的作者。他的博客地址为www.random-ideas.net。
目录
第一部分 Objective-C 简介
第1 章 Objective-C 简介 2
1.1 使用Xcode 进行开发 3
1.1.1 新建项目 3
1.1.2 项目文件 5
1.1.3 添加源码文件 6
1.1.4 主Xcode 窗口 7
1.2 理解编译过程 9
1.2.1 编码 9
1.2.2 源码、编译代码和可执行文件 11
1.2.3 查看应用包 11
1.2.4 编译设置 13
1.3 使用Xcode 静态分析器 17
1.4 Objective-C 运行时 20
1.5 小结 20
第2 章 基本语法 21
2.1 使用语句和表达式 23
2.1.1 声明变量 23
2.1.2 使用注释 25
序言
在为iPhone OS 3写Cocoa Touch时,我意识到了需要写一本配套的书,以帮助新手们在接触Cocoa和Cocoa Touch等高层框架之前克服学习Objective-C的障碍。
所以当有人请我写一本专门介绍Objective-C语言的书时,我欣然接受了。
最后,我感觉到可以通过这本书向Mac、iPhone和iPad开发新手们介绍基础知识,因此万分激动。我期待这本书可以催化Objective-C在更多不同平台上发展。Objective-C完全有理由在Unix、Windows等平台上使用。
读者只需具备有限的计算机知识。我会从最基础的知识开始阐述,但是你至少需要懂得一些操作计算机的基础知识。
如果你已经熟悉了其他一些编程语言,这也不会有任何负面影响。我介绍的一些东西对你而言可能是一种回顾,不要担心,你会学到很多关于Objective-C的细节。
如果你接触过Objective-C,希望你可以在本书中发现一些有价值的新信息。我会努力将这些知识设计得便于你查找。这样一来,你无需逐页浏览,就能跳到某一部分并了解如何完成你想完成的任务。
对于本书中使用的一些约定,我尽量确保一致,同时尽量遵照苹果的约定。唯一一个比较明显的例外就是使用“方法”来表示实例和类的函数。苹果通常会倾向于使用“消息”。某种程度上这是缘于Objective-C受到Smalltalk的影响。
关于键盘快捷方式,我选用“Command键”这一术语来表示多数苹果键盘上空格键左侧的键。大家可能知道它也叫苹果键,因为就在几年前它上面会印有一个苹果标志。此外Command键旁边的键称为Option键,Option键旁边的就是Control键。 这些是和苹果文档的约定保持一致的。
关于存储对象的变量,我通常会把它们称作“实例变量”。有些书会习惯用该术语或者其缩写“ivar”来指代作为类的一部分的变量。对此,我喜欢使用“成员变量”。在我看来,成员变量可以是实例变量,但不是所有的实例变量都是成员变量。
在文中提及方法时,我会遵照苹果引用它们的约定:使用方法名,但不包括参数。比如以下方法:
-(void)someMethodUsingParam1:(NSString *)param1 andParam2:(NSString *)param2;
就会被写做:-someMethodUsingParam1:andParam2。如果它是一个类方法,打头的连字符就会被替换成一个+号,就像你在写类定义中的方法一样。
关于示例代码,在需要构建完整项目的章节,通常我会尽可能提供代码的完整列表。在没有提供的情况下,你可以从本书网站上下载包含图片资源和其他相关支持文件的项目。有部分章节可能无法创建一个完整的项目来展示相关技术。在这种情况下,代码列表可能只是一些片段,你可用作自定义代码的基础。由于这些代码片段无法构成功能完整的项目,在网站上也就没有提供示例项目。
我希望你在阅读本书时会有一种和我写作时一样的愉悦体验。在我看来,一本好的技术书的标志就是它不会被束之高阁。它会被好好地放在书桌上或者书桌旁,因为经常需要翻阅它。我希望这本书在你的手中也会有这样的地位,并且希望它书角翘起、封面破损,每页都留有潦草的笔迹,但仍然能在未来几年对你有所帮助。
Jiva DeVoe
book@random-ideas.net