基本信息
- 原书名:Learning Objective-C 2.0: A Hands-On Guide to Objective-C for Mac and iOS Developers
- 原出版社: Addison-Wesley Professional

编辑推荐
资深Mac OS X和iPhone开发者Robert Clair亲力打造
Objective-C 2.0最佳入门指南
助你成为一名合格的Objective-C程序员
内容简介
计算机书籍
《Obejctive-C 2.0 Mac和iOS开发实践指南》专门为那些想要学习Objective-C以便为Mac OS X或iOS编写程序的程序员量身打造。本书分为四部分。第一部分介绍学习Objective-C编程所需的C语言基础知识。第二部分介绍Objective-C编程的核心知识,包括消息机制、类和对象、类对象等。第三部分介绍Objective-C中的高级概念,包括引用计数、垃圾收集和Objective-C 2.0的新功能块。第四部分提供了Objective-C程序员常用的信息和资料。本书大多数章末都提供了练习,读者可以通过练习巩固在书中学到的知识。
《Obejctive-C 2.0 Mac和iOS开发实践指南》内容精练、可读性强、易于学习,侧重通过示例来介绍知识点和概念,是一本学习Objective-C 2.0不可多得的入门实践指南。本书适合想要学习Objective-C 2.0编程语言的初、中级程序员阅读,也可以作为社会培训机构的入门级培训教辅材料。
作译者
目录
译者序
前言
致谢
第一部分 Objective-C简介
第1章 C,Objective-C的基础 2
1.1 C程序的结构 3
1.1.1 main函数 3
1.1.2 格式化 3
1.1.3 注释 4
1.1.4 变量和函数名 4
1.1.5 命名惯例 5
1.1.6 文件 5
1.2 变量 6
1.2.1 整数类型 6
1.2.2 浮点类型 7
1.2.3 真值 7
1.2.4 初始化 7
1.2.5 指针 8
1.2.6 数组 9
译者序
在移动互联网浪潮中,移动应用开发将起到重要作用。App Store的成功模式给移动应用开发搭建了良好的商业模式和环境。目前有越来越多的开发者加入到移动开发的队伍中。而基于Mac OS和iPhone的移动应用开发则是其中重要的一个分支。
Objective-C最初由Smalltalk演变而来,它是基于C语言的面向对象扩展。目前,Objective-C 是Mac OS的首要开发语言,也是GNUstep 在Linux 和其他平台上的开发语言。随着基于Mac OS和iPhone、iPad开发的兴起,Objective-C受到越来越多的关注,其流行度也在不断攀升。在TIOBE编程语言排行榜2010年10月的榜单中,Objective-C排在第8位,而与去年相比,Objective-C的份额提升最多,达到2.54%,同时入选了2010年度语言。因此,关注与学习Objective-C的人越来越多。
《Obejctive-C 2.0 Mac和iOS开发实践指南》集中介绍了Objective-C语言,专门为那些想要学习Objective-C以便为Mac OS X或iOS编写程序的程序员量身打造(iOS用于iPhone、iPod Touch和iPad)。本书分为四部分。第一部分回顾了学习Objective-C编程所需的C语言基础知识,并简单介绍了Objective-C程序的结构。第二部分介绍Objective-C编程的核心知识,包括消息机制、类和对象、类对象、框架、Foundation类、控制结构、分类、特性、协议,等等。第三部分介绍了Objective-C中的高级概念,包括引用计数、垃圾收集和Objective-C 2.0的新功能块。第四部分包括5个附录,分别提供了Objective-C程序员常用的信息和资料。《Obejctive-C 2.0 Mac和iOS开发实践指南》大多数章末都提供了练习,以帮助读者巩固在书中学到的知识。本书内容注重实用,侧重通过示例来介绍知识点和概念,因此本书对于初中级程序员来说,是一本不可多得的入门实践指南。
参加本书翻译的有李强、关志兴、王建勇、毛立涛、闫柳青、姜巧生、沈海峰、谢扣林、乔义峰、刘查强、王义强、刘国际、杨传辉和王建华等。读者在阅读过程中如有疑问,可通过translatebook@163.com与译者联系交流。
前言
在Apple的世界中,Objective-C并不是单独工作的。它与称为框架的两个类库一起使用。Foundation框架包含了用于基本实体的类,例如,字符串和数组,以及包装了与操作系统进行交互的类。AppKit包含了用于窗口、视图、菜单、按钮及构建图形用户界面所需的其他各种挂件的类。将这两个框架综合起来就是Cocoa。在iOS中用一个叫做UIKit的不同框架取代了AppKit。Foundation和UIKit合称为Cocoa Touch。
Objective-C由Brad J. Cox在20世纪80年代早期创建。在1988年,由Steve Jobs在离开Apple后创建的NeXT Computer公司许可使用Objective-C,并且以其作为创建在NeXT的NeXTSTEP操作系统下运行的应用程序开发环境的基础。NeXT工程师开发了一组Objective-C库,以便构建应用程序。在NeXT于1933年减少硬件业务之后,它与Sun Microsystems合作开发了OpenStep,这是针对一种面向对象系统的开放性规范,以NeXTSTEP API为基础。Sun最终丧失了对OpenStep的兴趣。NeXT继续销售其OpenStep版本,直到Apple于1997年年初收购了NeXT。NeXTSTEP操作系统变成了Mac OS X的基础。NeXT Objective-C库变成了Cocoa的基础。
《Obejctive-C 2.0 Mac和iOS开发实践指南》集中介绍了Objective-C语言。它不是教你如何编写Cocoa程序,或者使你成为Xcode的专业用户。本书只是涉及了Foundation框架的一小部分,并且只是介绍性地提及AppKit和UIKit。本书所做出的假设是,如果你首先对Cocoa所基于的语言有一个较好的理解,那么你学习Cocoa将会变得更容易。
本书的目标读者
《Obejctive-C 2.0 Mac和iOS开发实践指南》是为那些想要学习Objective-C以便为Mac OS X或iOS编写程序的程序员量身打造的(iOS用于iPhone、iPod Touch和iPad)。尽管从技术上讲,也有可能使用其他的语言来编写完整的Mac OS X程序,但编写一个遵从Apple Human Interface Guidelines并且拥有相应的Mac观感的应用程序,则需要使用Objective-C Cocoa框架。即便你使用不同的语言,例如纯C或C++,来编写一个Mac应用程序的核心,用户界面层还是应该使用Objective-C编写。在为iOS编写程序时,程序员没有任何选择:iPhone应用程序的外层和用户界面必须使用Objective-C编写。
对于那些想要使用来自GNUStep项目的软件为其他平台编写Objective-C程序的程序员来说,本书也很有用(GNUStep是OpenStep库的一个开源实现)。
你需要知道什么
本书假设读者拥有C语言的使用经验。Objective-C是C的一个扩展,本书主要关注Objective-C向C中添加了什么。对于那些具有C经验的人,以及那些适合快速学习一门新语言的人来说,本书第2章和第3章对C的基本部分进行了回顾,这些基本知识是编写一个Objective-C程序很可能要用到的。如果你没有C或任何类似C(C++、Java和C#)的计算机语言的经验,那么你需要在学习本书的同时阅读一本关于C的图书。此前接触过一种面向对象语言对学习本书有帮助,但不是必需的。随着本书的推进,将会分别介绍必需的面向对象概念。
Objective-C 2.0中的新内容
如果你已经知道一些Objective-C的知识,并且想要直接跳到2.0版新增内容的部分,那么关于这部分的知识在如下的各章中介绍:
快速枚举(第10章)为遍历对象的一个集合提供了一种简单(且快速)的方式。
声明特性(第12章)提供了一种简单的方式来指定一个对象的实例变量,并且让编译器为你创建访问这些变量的方法。
垃圾收集(第15章)添加了对Objective-C的自动内存管理。
块(第16章)允许你定义类似函数的对象,它们自身带有环境。
本书是如何组织的
《Obejctive-C 2.0 Mac和iOS开发实践指南》分为四部分:第一部分是C的概览,然后介绍面向对象编程和Objective-C。本书的第二部分详细介绍了Objective-C语言,并且对Foundation框架进行了介绍。本书的第三部分介绍了在Objective-C中使用的两种内存管理形式,以及Objective-C 2.0新添加的块功能。本书的第四部分是附录,提供了Objective-C程序员常用的信息和资料。
第一部分 Objective-C简介
第1章概述了C的基本知识,介绍了在编写Objective-C程序时最可能用到的C知识。
第2章继续概述C,讨论C和Objective-C程序的内存布局,以及内存寻址和不同类型变量的生命周期。即便你熟悉C,也可能需要阅读本章。很多有经验的C程序员并不完全熟悉本章介绍的内容。
媒体评论
有很多关于Objective-C的图书试图介绍面向对象编程、Objective-C计算机语言和Apple平台上的应用开发的整个内容。如此范围的主题太宽泛了,岂是单独一本篇幅有限的图书所能完全囊括的?《Obejctive-C 2.0 Mac和iOS开发实践指南》专注介绍Objective-C的基础知识,它能帮助你成为一名编写Objective-C代码的合格程序员。—Joseph E. Sacco博士,J.E. Sacco & Associates公司
《Obejctive-C 2.0 Mac和iOS开发实践指南》是一本大师级的教程,它针对Objective-C语言提供了深入的、有趣的介绍,对于程序员新手和资深专业人士都有启发意义。当有刚接触Objective-C的程序员询问该从何处开始时,我会推荐这本书给他们。—Matt Long, Cocoa Is My Girlfriend (www.cimgf.com)网站
《Obejctive-C 2.0 Mac和iOS开发实践指南》作者精通Objective-C语言,并且以一种易于学习的方式来介绍它。不管你是新手还是专业程序员,都可以在本书中有所收获,而这并不需要预先有C语言的知识。—Cory Bohon,Mac