词条 | iPhone应用程序开发攻略之深入浅出Objective-C 20 |
释义 | 图书信息软件创富密码:iPhone应用程序开发攻略之深入浅出Objective-C 20(双色)王志刚 等编著 ISBN 978-7-121-13469-2 2011年6月出版 定 价:69.00元 16开 356页 宣传语在学了此书中关于如何使用Objective-C 20开发您的第一个IPhone应用程序之后 您也可以赚取您的第一桶金 内 容 简 介本书系统地介绍了关于使用Objective-C 20开发iPhone应用程序的基础知识,涵盖各种开发工具的操作技巧、框架(Framework)内部的工作原理、软件的调式技巧、后期制作等基础知识。书中花费大量篇幅介绍开发iPhone应用程序时所必需的各种常用类库,结合针对性强的应用实例的讲解,可进一步加深读者对这些常用类库的理解。 本书可作为iPhone应用程序开发的入门教材使用。 前 言今天像Android,Blackberry,Windows Phone,iPhone等智能手机广受关注,特别是iPhone。2010年伊始,苹果公司连续推出了iPhone的升级产品iPhone 4,以及与iPhone使用相同OS的iPad,2011年又推出了iPad 2,给业界带来了强烈的冲击。 苹果公司的iPhone,iPad等产品广受消费者支持的原因,不仅在于其前卫新颖的外观设计,简洁直观的用户界面,更在于其能给用户提供多种多样的应用程序的选择。苹果的App Store中已经汇集了十几万种应用程序供用户选择,而且每天还有各种专业或业余的程序设计人员不断将自己的作品汇入其中。可以肯定地说在不远的将来,我们还将继续见证苹果移动电子产品的成长壮大。 本书目的不是要惊叹iPhone,iPad等产品的伟大,而是想告诉大家,其实我们也可以在这个不断成长的大饼中,利用自己的智慧分得一杯羹。只要您有好的创意,即使您是没有程序设计经验的家庭主妇,只要您做出了应用程序,加入到App Store中后,也可以从苹果移动电子产品的全球用户群中赚取您的利润。运气好的话,甚至是一笔不菲的收入呢,这方面成功的例子有很多。 本书内容至于iPhone应用程序的开发更不是什么高不可攀的东西,本书从易到难介绍iPhone应用程序编程的知识,同时还会有笔者在开发iPhone应用程序过程中获得的许多心得体会。 本书主要介绍iPhone应用程序的开发语言Objective-C,以及Cocoa与Cocoa Touch框架(framework)的基础知识(Cocoa Touch框架用于iPhone应用程序,而Cocoa框架用于Mac应用程序)。同时还花费了一定篇幅来介绍关于iPhone应用程序开发的基本概念方面的知识,如MVC框架概念、内存管理概念等。 iPhone应用程序开发必须要在Mac电脑上进行,对于那些没有使用Mac电脑的朋友,书中也穿插了许多关于Mac电脑的使用知识,介绍了开发iPhone以及Mac应用程序时专用的、主要的几种开发工具的使用,如Xcode,Interface Builder等。涵盖从应用程序开发到最终应用程序发布为止的,几乎所有会使用到的开发工具。 本书中围绕相关知识的介绍,配备了详细的实例。具体的开发相关知识都是以实例为中心进行展开的,力争做到通俗易懂。 本书读者开发iPhone应用程序时基本上都要使用Objective-C(部分有使用DashCode开发的Web应用程序),因此掌握Objective-C及相关框架知识是首要的前提条件。Objective-C语言的本质是C语言的扩展版本,是一种面向对象型的开发语言。有了C语言或者面向对象语言的基础知识,将有助于您掌握Objective-C,但是并不意味着没有这些,学习起来就会很困难。通常iPhone应用程序的大部分功能都是由各种框架(如iPhone应用程序的界面由AppKit框架实现)来完成的,实际代码几乎是约定俗成的,因此不用拥有对面向对象编程概念很深理解,或者更深的C语言知识就能够着手编程了。笔者认为,本书正是适合那些没有C语言基础以及面向对象编程知识的朋友。当然对于拥有这方面知识的朋友可以将有关章节当做复习或者参考,毕竟Objective-C的面向对象的概念与其他语言如Java等还是有所区别的。 参与本书编写的人员有朱蕾、罗伟、黄建峰、朱至濂。另外,在此特别感谢我父母在本书编写过程中给予的大力支持。 作者 2011年3月 目 录第1章 配置开发环境 2 11 Mac应用程序开发环境2 12 iPhone应用程序的开发环境3 13 查看安装目录中的内容5 131 启动Xcode6 132 启动Interface Builder7 14 Mac中的基本操作7 141 弹出菜单的显示方法7 142 工具条的定制9 第2章 开发工具 11 21 Xcode11 211 综合开发环境Xcode的功能11 212 工程窗口12 213 文本编辑器的功能16 214 开发者手册18 22 Interface Builder20 23 Dashcode20 24 iPhone模拟器21 25 其他工具22 251 FileMerge22 252 Icon Composer23 253 Property List Editor23 26 Mac或iPhone应用程序开发的流程23 261 准备应用程序用的材料24 262 建立步骤25 263 gcc26 第3章 应用程序与框架 27 31 关于应用程序27 311 应用程序的种类28 312 关于iPhone应用程序29 32 框架29 321 简单的“Hello World”程序29 322 框架的出现30 323 编程语言与框架的关系30 33 Mac OS X以及iPhone SDK中的框架31 331 框架的安装目录31 332 Cocoa与Carbon32 333 应用程序中使用的框架32 34 Cocoa与Carbon的发展轨迹34 341 Cocoa是面向对象型的框架,所以挺难掌握35 342 Carbon是用C开发的,懂语言的人应该用Carbon35 343 Carbon将来会消失35 344 Carbon应用程序使用Cocoa进行改写后速度会提高35 345 如果使用Windows版的Cocoa进行开发,在Windows上也能 运行Cocoa应用程序36 第4章 Cocoa与Objective-C 37 41 框架的使用37 411 关于API37 412 API与编程语言的关系39 42 Objective-C的发展史39 43 用于其他语言中的Cocoa API41 431 通过桥调用Cocoa41 432 是否应提倡在Objective-C以外的语言中调用Cocoa API的开发方式42 44 解答与Objective-C相关的几个疑问43 441 是否需要先掌握C语言,以及Smalltalk呢43 442 Objective-C这样冷门的语言不好学吧43 443 Objective-C也能广泛运用在Windows或Linux平台上吗44 444 Objective-C将来会消失吗44 第5章 Cocoa面向对象编程的基本概念 45 51 面向对象的5个基本术语45 511 类46 512 实例46 513 实例变量47 514 方法48 515 继承48 516 相互关系49 517 对象50 52 在Cocoa实例中理解基本术语50 521 通过按钮配置理解基本术语50 522 文本输入框的继承关系51 第6章 Hello World应用程序 53 61 关于Cocoa版的Hello World程序53 62 启动Xcode创建工程54 63 创建类56 631 创建类文件56 632 追加代码56 64 启动Interface Builder设计用户界面58 641 xib文件58 642 Interface Builder窗口59 643 设计Hello World的用户界面61 65 类的实例化62 66 连接插座与动作64 67 完成AppController的代码编写67 68 建立与运行67 69 开发步骤再回顾69 第7章 MVC构架 70 71 Hello World应用程序开发流程中包含的信息70 72 什么是MVC构架70 721 视图层71 722 模型层71 723 控制层72 73 使用MVC构架的实例72 731 iTunes的模型72 732 iTunes的视图73 733 iTunes的控制74 74 使用MVC构架的Cocoa应用程序开发特点75 741 视图组件由Cocoa提供75 742 保持视图与模型间的相互独立 75 743 应用程序特有的功能由控制提供 75 744 只用创建模型以及控制的类 76 第8章 插座与动作77 81 视图与控制间的信息交换 77 82 插座与动作78 821 什么是插座78 822 什么是动作78 83 插座以及动作的连接 79 831 插座与动作的追加79 832 插座的连接80 833 动作的连接81 834 连接确认82 第9章 C语言语法基础 85 91 C语言概论85 911 C语言的发展过程 85 912 C语言的特点85 913 C源程序的结构特点86 914 C源程序的构成规则89 915 C语言的字符集89 916 C语言词汇90 92 数据类型92 921 基本数据类型92 922 基本运算符和表达式98 923 关系运算符和表达式101 924 逻辑运算符和表达式102 93 数组103 931 一维数组103 932 二维数组104 933 字符数组104 94 指针104 941 指针的基本概念105 942 指针变量的类型声明105 943 指针变量的赋值106 944 使用字符串指针变量与字符数组的区别106 95 C语言的输出语句printf()函数107 951 printf()函数调用的一般形式107__ 952 格式字符串107 953 输出的实例109 96 控制语句110 961 if语句 110 962 switch语句113 963 while语句115 964 do…while语句116 965 for语句117 97 函数119 971 函数的语法120 972 函数的声明与实体121 973 可变参数122 974 标准函数库122 98 结构123 981 结构的定义123 982 结构类型变量的声明124 983 结构变量的取值与赋值125 99 在Xcode中创建学习C语言用的工程125 第10章 Objective-C的语法129 101 Objective-C的编程概论129 1011 Objective-C与C语言129 1012 Objective-C程序129 1013 类的声明与实体130 1014 创建Objective-C的测试工程130 102 类的声明135 1021 导入声明文件135 1022 类的声明136 1023 实例变量的声明137 1024 实例方法的声明137 103 编写类的实体142 1031 编写类的实体142 1032 编写方法代码143 1033 关于方法的声明144 104 对象专用变量类型144 1041 实例对象专用的变量类型144 1042 id类型145 1043 nil类型145 1044 在条件表达式中使用对象变量145 105 方法调用146 1051 实例方法的调用146 1052 类方法的调用147 1053 对象为nil的情况下148 106 命名规则148 1061 类的命名规则148 1062 实例变量的命名规则149 1063 方法的命名规则149 107 重新解析Cocoa的Hello World程序150 1071 AppControllerh150 1072 AppControllerm151 第11章 内存管理153 111 内存分配与释放153 112 与内存相关的问题154 1121 内存释放的时机154 1122 内存泄漏155 113 使用垃圾收集进行内存管理155 1131 垃圾回收155 1132 Objective-C与垃圾回收157 1133 垃圾回收功能有效化158 1134 垃圾回收编程的规则159 114 由参照统计实现的内存管理159 1141 参照统计的基本概念159 1142 retain和release方法160 1143 对象保持到释放的流程160 115 类的实例化162 1151 类的实例化与初始化162 1152 自动释放163 1153 创建实例的方法164 1154 实例的释放165 116 内存管理的规则166 1161 临时对象166 1162 内存管理经验总结168 第12章 字符串169 121 字符串专用类169 122 NSString与NSMutableString170 123 字符编码170 1231 什么是字符编码170 1232 NSString的字符代码为Unicode171 1233 NSStringEncoding171 124 字符串的生成172 1241 使用@""的形式创建新字符串172 1242 创建中文字符串173 1243 使用格式创建字符串174 125 NSRange176 126 字符串处理177 1261 计算字符串的长度177 1262 字符串的连接、插入和删除178 1263 字符串的比较181 1264 字符串的检索183 1265 抽取部分字符串184 127 读/写文本文件186 1271 读取文本文件186 1272 输出文本文件187 第13章 集合189 131 数组189 1311 NSArray与 NSMutableArray189 1312 数组的创建190 1313 数组的长度191 1314 通过索引取得对象192 1315 使用NSEnumerator取得对象193 1316 使用高速枚举法取得对象196 1317 对象的追加与删除197 132 字典199 1321 什么是字典类型199 1322 NSDictionary与 NSMutableDictionary200 1323 NSDictionary的创建200 1324 键与值的取得202 1325 键与值的追加203 133 包装类205 1331 什么是包装类205 1332 NSNumber205 134 对象的等价与同值208 1341 拥有相同值的对象208 1342 等价与同值的判定208 1343 在集合类中的应用210 135 集合类与参照统计210 1351 NSArray与参照统计210 1352 NSDictionary与参照统计212 第14章 XML应用213 141 XML概要213 1411 什么是XML213 1412 一种常用的XML实例——RSS213 142 XML的解析215 1421 解析及解析器215 1422 XML解析器的种类215 1423 树结构216 143 Cocoa中的XML解析器218 1431 NSXMLDocument,NSXMLNode和NSXMLElement218 1432 XML文档的解析器219 1433 Xpath221 1434 节点信息222 1435 节点的父子关系223 1436 属性值的取得225 第15章 表格视图227 151 表格视图227 1511 NSTableView与NSTableColumn227 1512 表格的构造229 152 数据资源229 1521 在表格中使用数据资源229 1522 数据资源的方法230 1523 NSTableView的方法231 153 实例231 1531 数据资源的设置238 1532 numberOfRowsInTableView:238 1533 tableView:objectValueForTableColumn:row:239 1534 单击Read按钮的处理代码242 第16章 UIKit框架简介及如何创建iPhone表格视图245 161 UIKit概要246 1611 UIKit框架的类一览表246 1612 UIKit框架与AppKit框架的区别249 162 创建测试UIKit类的试验工程250 1621 创建第一个iPhone应用程序——Hello World工程251 1622 修改Hello World工程使之成为不使用xib文件的实验工程256 163 创建最简单的表格261 1631 创建表262 1632 追加选择单元时运行的动作265 164 iPhone表格视图的相关类参考265 1641 UITableView类266 1642 UITableViewCell类272 1643 UITableViewController类279 1644 UITableViewDataSource协议类280 1645 UITableViewDelegate协议类284 第17章 常见的错误与警告287 171 什么是错误与警告287 172 Xcode中的错误与警告287 1721 错误与警告的显示方式288 1722 建立结果窗口288 1723 代码窗口中的显示289 173 经常会出现的错误信息290 1731 ‘ XXX’undeclared (first use in this function)290 1732 parse error before ‘XXX’token291 1733 invalid preprocessing directive #XXX291 1734 No Such file or directory292 1735 Undefined symbols292 174 经常会出现的警告信息293 1741 ‘XXX’may not respond to ‘YYY’ 293 1742 unused variable ‘XXX’294 1743 local declaration of ‘XXX’hides instance variable295 1744 incomplete implementation of class ‘XXX’296 1745 control reaches end of non-void function297 1746 passing argument n of ‘XXX’ assignment from distinct Objective-C type298 第18章 调试方法299 181 缺陷与调试299 1811 什么是缺陷与调试299 1812 描述缺陷300 1813 缺陷的重现300 182 NSLog301 1821 使用NSLog输出调试信息301 1822 NSLog的格式302 183 调试工具304 1831 什么是调试工具304 1832 调试构建配置305 1833 断点与调试模式的启动305 1834 调试界面306 1835 调试的分步执行308 184 例外309 1841 什么是例外309 1842 捕捉例外309 1843 发生例外时停止运行312 1844 避免使用太多的例外313 第19章 应用程序的后期制作314 191 应用程序图标314 1911 制作图标的图片315 1912 图标格式文件的制作316 1913 向工程中追加图片文件317 192 应用程序的设置317 1921 什么是目标317 1922 与目标相关的应用程序设置318 1923 Infoplist321 193 本地化322 1931 什么是本地化322 1932 用户界面的本地化323 1933 应用程序名称的本地化326 1934 本地化的测试328 194 构建配置329 1941 什么是构建配置329 1942 将构建配置设为Release329 195 完成的应用程序330 附录A 加入iPhone Developer Program331 索引337 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。