本书将帮助您踏上神奇的Mac OS X应用程序开发之路!
本书介绍了Mac OS X开发技术的各个重要主题。各章节的内容安排如下:
●第1章 从历史到现实,为您介绍Macintosh操作系统的发展历程,并特别介绍即将发布的Mac OS X 10.4操作系统的众多创新特性;
●第2章 完整介绍Mac OS X的体系架构,及其对开发的影响;
●第3章 系统介绍Mac OS X最为重要的集成开发环境Xcode,并通过一些简单的例子演示使用Xcode进行开发的流程;
●第4章 介绍Mac OS x的国际化和本地化技术,对于发布多语言的应用程序版本很有帮助;
●第5章 介绍苹果的QuickTime技术,描述如何用它来制作发布多媒体内容,以及如何利用它支持多媒体应用开发;
●第6章 介绍如何用Java在Mac OS X上开发应用程序,可以把它作为Mac OS X上Java开发的一个快速指南;
●第7章 介绍MacOSX的Unix血统,如何在MacOSX上使用Unix的功能,并简单介绍一些当前的开放源代码工程;
●第8章 重点介绍Mac OS X Cocoa开发框架,并通过一些简单的例子,演示如何用Cocoa开发MacOSX的应用程序;
●第9章 详细介绍Mac OS X平台上极富特点的脚本语言AppleScript,并通过若干实例展示了AppleScript的强大功能;
●第10章简单介绍Mac OS X的Carbon开发框架,以及用I/O Kit开发MacOSX设备驱动程序的基本思想。
无论您已经是PC平台的编程高手,还是刚刚准备开始学习编程的新人,本书都将带您进入新奇的苹果平台开发世界。掌握本书介绍的苹果开发技术基础知识,无疑是成为苹果平台开发人员的必修课。
让我们一起成为MacOSX的开发者吧!
本书是Mac OS X应用程序开发的入门级教程,介绍了Mac OS X开发技术的各个重要主题。主要内容包括:苹果机操作系统的发展历程,特别介绍了即将发布的MacOS X 10.4操作系统的众多创新特性;Mac OS X的体系架构、集成开发环境Xcode、国际化和本地化技术、QuickTime技术、Java应用程序的开发、UNIX的功能、Cocoa开发框架、AppleScript、Carbon开发框架、I/O Kit开发的基本思想等。
第1章 MacOS系统介绍
1. 1 苹果系统简史
1. 1. 1 第一个苹果核
1. 1. 2 苹果图形时代的来临
1. 1. 3 寻求发展
1. 1. 4 迈向MacOSX
1. 2 走进MacOSX
1. 2. 1 黑豹
1. 2. 2 水元素
1. 2. 3 文件管理
1. 2. 4 多用户与安全性
1. 2. 5 常用应用软件
1. 2. 6 Apple字体解决方案
1. 2. 7 网络
1. 2. 8 使用终端
1. 2. 9 使用帮助
1. 3 系统技术
1. 3. 1 与Windows互动
1. 3. 2 AppleScript
1. 3. 3 关于网络的补充
1. 3. 4 高级硬件特性
1. 4 Tiger
1. 4. 1 Spotlight
1. 4. 2 iChat AV
1. 4. 3 Safari RSS
1. 4. 4 Dashboard
1. 4. 5 Automator
1. 4. 6 VoiceOver
1. 4. 7. Mac Sync
1. 4. 8 更强大的UNIX支持
1. 4. 9 Xcode 2. 0
1. 4. 10 64位技术
1. 4. 11 核心图像
1. 4. 12 H. 264/AVC
笫2章 MacOSX系统架构
2. 1 MacOSX体系结构总揽
2. 1. 1 分层透视图
2. 2 应用程序环境
2. 2. 1 Classic
2. 2. 2 BSD
2. 2. 3 Carbon
2. 2. 4 Cocoa
2. 2. 5 Java
2. 3 应用服务
2. 3. 1 图形和视窗环境
2. 3. 2 打印系统
2. 3. 3 其他应用服务
2. 4 核心服务
2. 4. 1 核心基础
2. 4. 2 Carbon核心
2. 4. 3 CFNetwork
2. 4. 4 Web服务
2. 4. 5 Open Transport
2. 5 追踪用户事件
第3章 XcOde
3. 1 介绍
3. 2 让我们起步
3. 2. 1 关于Xcode
3. 2. 2 开发工具和系统架构
3. 3 苹果的集成开发环境和How2do
3. 3. 1 Xcode应用程序的功能
3. 3. 2 创建一个工程
3. 3. 3 查找技术文档和信息
3. 3. 4 使用Interface Builder为应用程序添加用户界面
3. 3. 5 使用修正和继续功能
3. 4 开发过程
3. 4. 1 设计一个应用程序
3. 4. 2 设计一个用户界面
3. 4. 3 生成源代码
3. 4. 4 版本控制
3. 4. 5 调试和优化
3. 4. 6 打包
3. 5 特殊工程类型的注意事项
3. 5. 1 脚本
3. 5. 2 创建框架
3. 5. 3 标准苹果插件工程
3. 5. 4 工具工程
3. 5. 5 Java
3. 5. 6 内核扩展
3. 5. 7 WebObjects
3. 6 工具描述
3. 6. 1 创建源代码
3. 6. 2 版本控制
3. 6. 3 调试和优化
3. 6. 4 打包
3. 6. 5 脚本
3. 6. 6 Java
3. 6. 7 内核扩展
3. 6. 8 工具箱驱动程序
3. 7 阅读资料指南与参考文档
3. 7. 1 开发人员指南
3. 7. 2 参考文档
第4章 本地化和国际化
4. 1 相关术语概述
4. 2 MacOSX国际化技术
4. 2. 1 主要的国际化技术
4. 2. 2 语言预置及束资源
4. 2. 3 指定语言和语言区
4. 2. 4 国际化和本地化工具
4. 3 MacOSX本地化技术
4. 3. 1 本地化用户界面
4. 3. 2 本地化字符串
4. 3. 3 加入多语系支持
笫5章 QuickTime
5. 1 QuickTime技术及其应用
5. 1. 1 认识QuickTime
5. 1. 2 QuickTime的优点
5. 1. 3 QuickTime的基本架构和基本操作
5. 1. 4 QuickTimeVR虚拟现实
5. 1. 5 QuickTimeStreaming流媒体
5. 1. 6 QuickTime应用实例
5. 2 QuickTime程序设计
5. 2. 1 程序设计的资源支持
5. 2. 2 基于Windows的QuickTime程序设计
5. 2. 3 使用QuickTime组件
5. 2. 4 打开和播放影片
第6章 MacOSX中的Java
6. 1 什么是Java
6. 1. 1 了解Java
6. 1. 2 Macintosh上的Java
6. 1. 3 MacOSX提供理想的Java环境
6. 1. 4 Java的用户环境
6. 1. 5 获得Aqua用户界面
6. 1. 6 HFS+
6. 1. 7 使用Xcode编写Java程序
6. 2 MacOSX的部署选项
6. 2. 1 可双击启动的JAR文件
6. 2. 2 MacOSX应用程序包
6. 2. 3 JavaWeb Start
6. 2. 4 Java插件
6. 3 用户界面工具箱
6. 3. 1 Swing
6. 3. 2 Java2D
6. 4 核心应用程序接口
6. 4. 1 连网
6. 4. 2 预置
6. 4. 3 JNl
6. 5 Java虚拟机
6. 5. 1 Javal. 4. 1虚拟机的基本属性
6. 5. 2 MacOSX的Java共享档案
6. 6 Info. plist中Java字典的关键字
6. 6. 1 可用变量
6. 6. 2 关键字和值
6. 7 运行时系统属性
6. 7. 1 和本地应用程序环境的集成
6. 7. 2 渲染提示
6. 7. 3 全屏Java
6. 7. 4 窗口尺寸的调整
6. 8 Java虚拟机的选项
6. 8. 1 一般选项
6. 8. 2 MacOSX专用选项
6. 8. 3 堆的大小
6. 8. 4 垃圾收集:内存的使用
6. 8. 5 垃圾收集:一般设定
6. 8. 6 编译
6. 8. 7 线程
6. 8. 8 共享
6. 9 Javal. 4. 1应用程序接口:苹果技术的扩展
6. 9. 1 Application类
6. 9. 2 ApplicationAdapter类
6. 9. 3 ApplicationBeanlnfo类
6. 9. 4 ApplicationEvent类
6. 9. 5 ApplicationListener接口
6. 9. 6 CocoaComponent抽象类
6. 9. 7 FileManager类
第7章 UNIX与开放源代码
7. 1 UNIX与MacOSX
7. 1. 1 概述
7. 1. 2 MacOSX中的UNIX--Darwin
7. 1. 3 Darwin的体系结构
7. 1. 4 Darwin的Mach
7. 1. 5 Darwin的I/O kit
7. 1. 6 Darwin的文件系统
7. 1. 7 Darwin的网络架构
7. 1. 8 Darwin的BSD
7. 2 苹果公司旗下的其他开放源代码项目
7. 2. 1 概述
7. 2. 2 开放源代码项目简介
第8章 Cocoa编程
8. 1 Obective-C简介
8. 1. 1 Obective-C的历史
8. 1. 2 Obective-C中的数据类型
8. 1. 3 Obective-C中的消息传递方式
8. 2 Cocoa中Obecfive-C对象的声明与实现
8. 2. 1 接口文件
8. 2. 2 实现文件
8. 2. 3 创建新对象
8. 3 Obective-C中的内存管理
8. 3. 1 内存管理的目的
8. 3. 2 Cocoa中Objective-C的内存管理机制
8. 3. 3 Cocoa中内存管理的方法
8. 4 Cocoa框架简介
8. 4. 1 Cocoa环境
8. 4. 2 Cocoa在MacOSX中的位置
8. 4. 3 Cocoa应用程序的功能
8. 5 Cocoa架构
8. 5. 1 基础框架
8. 5. 2 应用程序工具箱
8. 5. 3 其他CocoaAPl框架
8. 6 一个图形界面的例子--重量单位转换器
8. 6. 1 创建重量单位转换器工程
8. 6. 2 重量单位转换器的界面
8. 6. 3 定义并控制转换器的类
8. 6. 4 完成界面操作并实现程序
8. 7 Cocoa绘图模型
8. 7. 1 Cocoa绘图的数据类型
8. 7. 2 画布和画刷
8. 7. 3 画笔
8. 7. 4 NSBezierPath机制
8. 8 Cocoa中的Apple事件处理
8. 8. 1 NSResponder类简介
8. 8. 2 创建工程与界面
8. 8. 3 代码实现
8. 8. 4 生成与调试
8. 9 全面接触Cocoa开发
第9章 AppleScript
9. 1 AppleScript介绍
9. 1. 1 什么是AppleScript
9. 1. 2 AppleScript能为我们做些什么
9. 1. 3 AppleScript语言难学吗
9. 1. 4 AppleScript程序是什么样的呢
9. 2 AppleScript的开发环境
9. 3 AppleScriptStudio介绍
9. 3. 1 AppleScriptStudio是如何工作的
9. 3. 2 HelloWorld小程序
9. 4 AppleScript语言
9. 4. 1 AppleScript语言的特点
9. 4. 2 语句
9. 4. 3 数据类型
9. 4. 4 变量
9. 4. 5 AppleScript中的全局变量
9. 4. 6 常量
9. 4. 7 操作符
9. 4. 8 控制语句
9. 4. 9 Script对象的范畴
9. 4. 10 对象
9. 4. 11 命令
9. 4. 12 引用
9. 4. 13 handler
9. 5 在AppleScript中使用对话框
9. 5. 1 给用户显示信息
9. 5. 2 使用按钮得到用户信息
9. 5. 3 通过用户键盘输入获得信息
9. 6 AppleScript程序样例分析
9. 6. 1 程序样例1(最小化所有的程序窗口和文件夹窗口)
9. 6. 2 程序样例2(为一个文件夹中所有文件加前缀或者后缀)
第10章 Carbon与驱动编程基础
10. 1 Carbon
10. 1. 1 Carbon简介
10. 1. 2 Carbon的组成
10. 1. 3 Carbon开发环境
10. 1. 4 相关链接
10. 2 设备驱动程序
10. 2. 1 什么是I/O Kit
10. 2. 2 I/O Kit的功能和设计
10. 2. 3 I/O Kit的限制
10. 2. 4 I/O Kit的组成部分
10. 2. 5 I/O Kit体系结构概述
10. 2. 6 I/O Registry
10. 2. 7 基类
10. 2. 8 更多I/O Kit的信息
资料来源
随着苹果电脑在中国市场上占有率的逐渐提高, 越来越多的用户开始接触这一新奇的充满创新的平台. 而基于苹果平台的开发人员也随着苹果机中国用户数量的增长而越发显得数量不足. 在图书市场里上万种开发书籍中, 基于Mac OS x平台的中文开发书籍却处于几乎没有的尴尬境地. 为此, 在苹果电脑(中国)公司的大力协助下, 我们特意组织编纂了这本苹果平台开发技术的基础教程.
几乎每一个使用过Mac OS X操作系统的人, 都会为其出色的用户界面而赞叹不已!作为一个基于UNIX内核的开放源代码操作系统, Mac OS X将健壮性. 易用性与视觉美感完美地结合在一起, 以至于它的许多爱好者们都想在其他任何场合重现出Mac OS x用户界面那晶莹的Aqua风格!
然而, 这一切是如何实现的?Mac OS X支持用哪些语言开发应用程序?如何在Mac OS X上开发出符合Aqua风格的应用程序?如何以最简便的方式, 让Mac OS x应用程序具备多语种和多语言的版本?如何为特殊的设备编写驱动程序, 使之能应用于Mac OS X?……对于这些问题, 本书都将给予您一个初步的解答.
如果您从未涉足过Mac OS X的开发, 但却希望为其开发独特的共享软件, 增加MacOSx的诱人之处, 或者您已经尝试过一些Mac OS X的开发, 但希望了解一些其他的开发框架和开发主题, 那么, 本书都适合您!
本书凝聚了集体的智慧和努力. 本书初稿的第1. 2章由陈 负责完成, 第3. 4章由桂一枫负责完成, 第5章由何正熙负责完成, 第6. 10章由胡瑞端负责完成, 第7章由张鼎辉负责完成, 第8章由梅路遥负责完成, 第9章由姜宏慧负责完成. 最后由周闻钧完成全部十章的改写和修订. 在本书的编写过程中, 得到了同济大学软件学院和同济大学苹果开发技术实验室的全力支持. 感谢苹果(中国)公司开发商技术支持及相关部门的工程师们, 夏鹏. 宋振轩. 陈梓桥和端木恒等为本书的编写提供了各种技术资料并给予了许多中肯的建议. 对于那些限于篇幅在此无法一一列名, 但同样为本书作出了巨大贡献的人们, 在此致以诚挚的谢意!缺少其中任何一个人的努力, 本书都将无法完成!
当然, 限于编者的水平, 本书难免还存在一些错误和疏漏, 恳请读者不吝批评和指正. 让我们一起成为MacOSX的开发者吧!
编 者
2004年8月