标题：Cocoa入门--使用Objective编程
基本信息
原书名：Learning Cocoa with Objective-C, 2nd Edition
原出版社： O'Reilly Media, Inc.
作者：(美)James Duncan Davidson Apple Computer,Inc. 
译者：彭舰张磊李征琚生根
丛书名： 中国电力出版社O'Reilly系列
出版社：中国电力出版社
ISBN：9787508365619
出版日期：2008 年2月
开本：16开
页码：353
版次：2-1
编辑推荐
助您轻松体验Cocoa开发，不仅是阅读，还有动手实践。每章中都提供了不同的示例程序供您构建，通过循序渐进的指导来教给您Cocoa编程的基础。
内容简介
本书助您轻松体验cocoa开发，不仅是阅读，还有动手实践。介绍完xcode和interface builder之后，您将很快接触到objective-c的面向对象编程概念，它是创建mac os x应用程序的首选语言。
每章中都提供了不同的示例程序供您构建，通过循序渐进的指导来教给您cocoa编程的基础。每章中学到的技巧都作为基础铺垫后面章节中介绍的更高级的技巧和概念。您将学到：
·高效地用好苹果的开发工具套装，包括xcode和interface builder
·构建单一的和多窗口的基于文档架构的应用程序
·用cocoa的文本处理能力操作文本数据
·用cocoa来绘图
·本地化您的应用程序以支持多语言
·完善您的应用程序，添加用于dock上的图标、提供帮助和打包发布。
在每章的结尾您将看到一些练习，挑战您改进刚创建的应用程序，或为早先的示例增添新功能。
尽管附录中提供了解决方案，但仍旧鼓励您通过自己尝试来学习。
本书最初由苹果公司的内部人员编写，并由james duncan davidson修订成新版，在译为中文版时又将内容更新至基于mac os x 10.5 leopard版本。
本书包含了cocoa框架的最新更新，还包括了便利的api速查参考卡，以及在附录中给出很多重要资源，对任何cocoa开发人员无论初学者还是高手都很重要。
作译者
James Duncan Davidson：Duncan是自由撰稿人、演讲者以及软件顾问，他主要专注在Mac OS X、Java和XML技术。他频繁地在全世界各种会议上演讲，话题范围从开源到高效Java开发。他是Apache Tomcat和Apache Ant的原创作者，并参与促成了Sun Microsystems（太阳微系统）公司向Apache Software Foundation（阿帕奇软件基金会）的捐赠。在Sun工作期间，他创作了两个版本的Java Servlet API规范，以及Java API for XMLProcessing（Java版XML API）规范
目录
前言
第一部分　cocoa概述和基础
第1章　cocoa介绍
mac os x编程环境
cocoa定义
cocoa框架
程序语言
foundation框架
第2章　cocoa开发工具
安装开发工具
interface builder
其他工具
命令行工具
练习
第3章　基于objective-c语言的面向对象编程
认识对象
创建和使用对象
objective-c定义的类型
创建新类
方法覆盖
其他概念
练习
第4章　cocoa foundation kit
字符串
集合（collection）
内存管理
练习
第二部分　单一窗口的应用程序
第5章　图形用户界面
cocoa的图形用户界面
用mvc模式设计应用程序
创建货币转换器工程
创建界面
改变文本框属性
定义类
连接模型、控制器和视图
构建并运行
练习
第6章　窗口、视图和控件
窗口和窗口系统
视图的层次结构
坐标系
控件、控件单元和格式器
练习
第7章　自定义视图
自定义视图的创建步骤
创建自定义视图
绘制视图内部：幕后工作
在视图中绘制字符串
在视图上绘制线条
练习
第8章　事件处理
事件
dot view应用程序
事件委托
通告
练习
第9章　模型和数据处理功能
协议
键值编码
表格视图
表格视图示例
保存数据：编码和归档
使用格式器（formatters）
练习
第三部分　基于文档的应用程序
第10章　多文档架构
架构概述
构建基于文档的应用程序
练习
第11章　多信息文本处理
cocoa的文本系统
创建多信息文本编辑器
实现字体菜单
文本存储和有属性的文本
实现文本菜单
处理嵌入式图像
练习
第四部分　其他主题
第12章　打印
打印视图
使用打印操作
设置页边距
练习
第13章　文件包和资源
文件包内部一瞥
使用文件包
练习
第14　章本地化
mac os x的语言偏好设置
本地化资源
本地化nib文件
本地化字符串
练习
第15章　默认和偏好设置
偏好设置如何工作
使用默认值
通过命令行访问偏好设置
练习
第16章　附属窗口
file’s owner对象的角色
创建信息窗口
练习
第17章　完善收尾
收拾界面
设定图标
添加帮助
定制关于（about）窗口
调整编译器设置
打包发布
结尾
练习
第五部分　附录
附录a　练习解答
附录b　附加资源
附录c　使用帮助查阅开发文档
词汇表
译者序
不管您是了解个人电脑发展史还是紧跟着当今时尚潮流，苹果公司的产品都应该具有与众不同的地位。不只是它的产品开创了个人电脑的时代，苹果公司也作为重要角色不断书写着个人电脑的发展历史。历经几个年风雨起伏它又凭借着自己先进的技术、令人称赞的创新精神、优秀的产品和独到的市场运作，重新回到主流市场之中。作为现存不多的老牌个人电脑公司之一，苹果公司如今几乎成为时尚创新科技的代名词，市值超过思科、IBM、惠普、戴尔等行业巨头。 
随着近几年来苹果电脑在国内市场的逐渐发展，现在越来越多的开发人员开始意识到应该在更具活力和创新精神的平台上开发优异的产品。《Cocoa入门—使用Objective-C》中文版的诞生也正是希望填补目前国内市场这方面的空白，通过它引领那些想在苹果平台有所作为的开发人员接触到这个平台独特而又强大的开发技术。秉承了O'Reilly一贯的优秀品质和同样独特的出版风格，本书的英文版在海外市场大受好评。
早在几年前苹果公司就开始和中国高校合作培养苹果平台未来的开发人员。四川大学作为第一批建立苹果开发技术实验室的高校还创建了苹果俱乐部，开设苹果开发课程，与其他合作高校一起培养出了一批苹果平台的爱好者。而与此对应的是，关于苹果电脑技术特别是开发技术的中文书籍相当匮乏。这抬高了苹果开发的入门难度，也把一批苹果平台的爱好者拦在开发者群体之外。译者很荣幸能将此书翻译介绍给国内读者，为苹果平台上开发技术在国内的普及贡献一份力量。 
本书原版由James Duncan Davidson撰写，对于准备在Mac OS X平台上开发应用程序的人来说这是一部难得的好书。它条理明晰、层层深入，先以概述和基本介绍开始，通过各个主题逐渐深入，使读者对如何在Mac OS X平台上开发应用程序得到具体的认识。作者的用语虽然平实易懂却不乏精彩之处，尤其是各种形象的举例。最为称道的是每章都会有一个示例程序，手把手地指导您利用所学的知识创建具有相应功能的Cocoa应用程序。
由于Mac OS X已发布最新的版本Mac OS 10．5 Leopard，而本书的原版是基于Mac OS 10．2编著。为此，译者做了相应修改，采用了Xcode而非早先的ProjectBuilder作为开发工具，并将所有图片在新的环境下进行了重新的截取和更换，所有的示例代码也在Leopard下进行了编译调试以验证其有效性，并做了必要修改。
所以说本书凝聚了多人的智慧和努力。彭舰翻译了本书的序言和第1—10章，张磊翻译了本书第11—15章，李征、琚生根翻译了本书的剩余章节，王俊和黄忍冬也参与了很多翻译和技术工作。彭舰负责全书的统稿工作。在书籍的翻译过程中有很多人参与其中并给出了诸多建议，在此特别表示感谢，他们是谢刚、简晓渝、谢川、廖朝辉、钟虹、伍敏、郭翔、张达平、熊奇、吴佳欣、刘唐、王红伟、李亭升和四川大学苹果俱乐部的同学们。苹果公司的端木恒先生完美地完成了本书的终稿技术审校工作，将本书的质量提升到新的高度。
感谢苹果公司夏鹏先生对本书的出版给予的极大帮助。感谢四川大学计算机学院院长周激流教授、唐宁九教授、谢汶副教授、未敏教授、邰明松老师、卢莉老师和中国电力出版社，感谢他们对本书提供了很多有益的建议和热情的支持。
前言
Mac OS X是一套经过精心设计的、无与伦比的操作系统，正如设计精良的高级跑车一样。 
Mac OS X的系统内部拥有基于Unix的强劲引擎，名叫Darwin。该引擎最初由Apple创始的开源组织研发，建立在FreeBSD 4．4以及Mach 3．0微内核技术之上。随着计算机技术的不断发展，Darwin内核也在不断更新，不断加入FreeBSD后续版本及其他技术的各种特性。操作系统的外层则是设计精美的GUI(图形用户界面)，它的易用性远超过任何桌面型操作系统，包括Windows系列和Linux上的GNOME、KDE。
苹果公司发布的最新版本桌面系统是MacOS X 10．5(代号为Leopard，美洲豹)，在桌面计算和网络计算方面又有了新的突破。2006年8月，苹果公司在苹果全球开发商大会(Worldwide Developer Conference，WWDC)上向参会人员第一次公布了Leopard的开发人员预览版，并在2007年10月发布了Leopard的正式版本。Leopard在以前MacOSX版本的基础上做了许多修正和改进，例如进一步增强了Cocoa应用程序编程接口(APIs)的功能。该APIs也就是我们常说的Cocoa框架，它被公认为目前世界上最优异的GUI应用程序开发环境。同时，Cocoa还提供了一套库(Library)和运行环境(Runtime)，构成功能强大的开发平台，在此平台上我们可以随心所欲地构建应用程序。
在开发Cocoa应用程序时，开发人员可以选择下面三种语言来使用Cocoa的APIs：Objective-C、Java和AppleScript。本书英文版第二版时从《Learning Cocoa》改为《Learning Cocoa with Objective-C》，它的英文原版根据早先的Jaguar特性做了彻底的修正和更新，而在翻译此书的中文版《Cocoa入门—使用Objective-C》时，又将内容针对自Panther到Leopard以来的变更做了修正和更新，向您介绍了如何使用Objective-C和Cocoa框架来构建MacOSX上的Cocoa应用程序。
作为一本关于Cocoa开发的入门书籍，《Cocoa入门—使用Objective—C》介绍了以下内容：
·使用Objective—C介绍面向对象编程所涉及到的一些基本概念。
·如何使用苹果的开发工具，重点介绍了Xcode和Interface Builder的使用。
·通过构建简单的应用程序，向您详细而系统地介绍了如何使用Cocoa的框架(包括Foundation与Application Kit)。
您在本书前面章节中所学到的概念，将会在后面章节中用到。在前面章节中构建的示例程序，将会在后面章节中变得更加复杂。通过本书的学习，您将全面地掌握Cocoa和Objective—C的内容，并为今后更加深入的研究打下良好的基础。这里有几本书，可以作为您进一步学习的参考：
·Building Cocoa Applications：A Step-by-Step Guide，作者Simson Garfinkel和Michael K．Mahoney(由O'Reilly出版)
·Cocoa Programming for Mac OS X，作者Aaron Hillegass(由Addison—Wesley出版)
·Cocoa Programming，作者Scott Anguish、Erik Buck和Donald Yacktman(由Sams出版)
尽管这些书都是讲如何使用Objective—C进行Cocoa编程，但每本书的学习侧重点略有不同。编程是一门有趣的艺术，有时候对于同一个问题如果掌握了不同的解决方法就会对系统开发非常有价值。想要成为一名出色的程序员，您最好阅读上面的每一本书，并从中总结出需要了解的内容。
除了上面所列的书籍以外，您还可以参考苹果公司所提供的大量技术文档。这些文档随同开发工具一起被安装在系统中，您可以在Xcode的帮助菜单中找到它们。如果能够连接互联网，也可以在网站上浏览在线文档。
注意： 当苹果公司更新文档的时候，他们一般会首先将修正后的版本放到互联网上，所以您最好将相关链接保存，以便日后访问。
不仅如此，您还可以参考一些其他的在线资源，包括订阅各种邮件列表以及访问相关网站。
本书的读者
这本书的标题本身就暗示了它是一本学习性的书籍，是专门为Cocoa和Objective-C的初学者准备的。本书假定您已经掌握了ANSIC的基础知识，并且已经学习了面向对象编程的基本概念。如果您对C语言不太熟悉，同时也没有用Java或其他语言编写过程序，那最好先不要阅读本书。相反，如果您对Objective—C已经非常熟悉，或者曾经在NeXTSTEP系统上进行过程序开发，那这本书对您来说则是太简单了。它主要适合于初学者，对有经验的开发人员来说用处不大。
谁该阅读本书
正如上面所提到的，这本书为那些想要使用Objective—C语言开发Cocoa应用程序的程序员所编写的。它假定您已经学习过C语言编程，并且还具备计算机科学方面的基础知识。如果您对C语言或者Java语言都很熟悉的话，学习Objective—C语言将不会有任何问题。