Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1524242
  • 博文数量: 465
  • 博客积分: 8915
  • 博客等级: 中将
  • 技术积分: 6365
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-30 15:05
文章分类

全部博文(465)

文章存档

2017年(33)

2016年(2)

2015年(4)

2014年(29)

2013年(71)

2012年(148)

2011年(178)

分类: 嵌入式

2012-10-24 14:01:05

Objective-C 程序设计(4)

(全球最畅销Objective-C编程书籍)

[]Stephen G. Kochan(斯蒂芬·G·科昌)著

林冀  范俊 朱奕欣译

ISBN 978-7-121-18091-0

20129月出版

定价:89.00

16

512

全球最畅销Objective-C编程书籍

这是一本Objective-C编程领域最畅销的书籍,内容涵盖Xcode 4.2和自动引用计数(ARC)。

本书详细介绍了Objective-C和苹果iOSMac平台面向对象程序编程的知识。本书作者假设读者没有面向对象程序语言或者C语言(Objective-C基础)编程经验,因此,初学者和有经验的程序员都可以使用这本书学习Objective-C。读者不需要先学习底层的C语言编程,就可以了解面向对象编程。

本书结合独特的学习方法,在每章都编写有大量的小程序例子和练习,使Objective-C程序设计适合于课堂教学和自学。

本书已经为iOS 5Xcode 4.2中的重大变更做了全面更新,最大的改动是引入了自动引用计数(ARC),并详细说明了如何在Objective-C编程过程中使用ARC提升和简化内存管理。

作者简介

Stephen Kochan是多本畅销书的作者或合著者,其中有关于C语言的,包括《Programming in C》(Sams2004)、《Programming in ANSI C》(Sams1994)和《Topics in C Programming》(Wiley1991),也有关于UNIX的,包括《Exploring the UNIX System》(Sams1992)和《Unix Shell Programming》(Sams2003)。从1984Mac最初引进时,他就已经在Macintosh计算机上编程了,他编写的《Programming C for the Mac》是Apple Press Library的一部分。2003年,Kochan编写了《Programming in Objective-C》(Sams2003),之后编写了另一本与Mac有关的书籍《Befinning AppleScript》(Wiley2004)。

名家推荐

“这是我读过的最棒的程序设计类书籍。如果想学习Objective-C,一定要购买这本书”

——Calvin Wolcott

     对于那些打算将Objective-C作为第一门程序设计语言的初学者来说,本书是非常好的学习资源,这样的书太缺乏了!

 ——Pat Hughes

编辑推荐

Objective-C 2.0Mac OS X系统和iPhone平台下的标准程序设计语言。它基于C语言设计而成,是一种面向对象编程语言,功能非常强大,广泛用于OS X以及多种支持gcc编译器的操作系统,如LINUXUNIXWindows系统。

本书是一本权威的Objective-C 2.0参考书,详细介绍该语言的具体内容。本书用丰富而详实的实例讲解了如何使用Objective-C,无需你有任何C语言或面向对象编程语言的经验。在内容上,本书在上一版的基础上进行了更新和扩充,它基于Objective-C2.0

本书不仅详细说明了如何充分利用Foundation框架的大量内置类库,还介绍了如何使用iPhone SDK开发基于iPhoneiPod Touch的应用。

可以通过访问作者的网站http://classroomm.com/objective-c/获取更多的学习资料。

 

 

1  引言    1

1.1  本书内容    2

1.2  本书组织方式    3

1.3  支持    5

1.4  致谢    6

1.5  4版前言    7

2  Objective-C编程    9

2.1  编译并运行程序    9

2.1.1  使用Xcode  10

2.1.2  使用Terminal 16

2.2  解释第一个程序    19

2.3  显示变量的值    23

2.4  小结    25

2.5  练习    26

3  类、对象和方法    29

3.1  到底什么是对象    29

3.2  实例和方法    30

3.3  用于处理分数的Objective-C    32

3.4  @interface部分    35

3.4.1  选择名称    35

3.4.3  类方法和实例方法    37

3.5  @implementation部分    39

3.6  program部分    41

3.7  实例变量的访问及数据封装    47

3.8  小结    51

3.9  练习    51

4  数据类型和表达式    53

4.1  数据类型和常量    53

4.1.1  int类型    53

4.1.2  float类型    54

4.1.3  char类型    54

4.1.4  限定词:longlong longshortunsignedsigned  56

4.1.5  id类型    56

4.2  算术表达式    57

4.2.1  运算符的优先级    58

4.2.2  整数运算和一元负号运算符    60

4.2.3  模运算符    62

4.2.4  整型值和浮点值的相互转换    64

4.2.5  类型转换运算符    65

4.3  赋值运算符    66

4.4  Calculator    67

4.5  练习    70

5  循环结构    73

5.1  for语句    74

5.1.1  键盘输入    81

5.1.2  嵌套的for循环    83

5.1.3  for循环的变体    85

5.2  while语句    86

5.3  do语句    90

5.4  break语句    92

5.5  continue语句    92

5.6  小结    93

5.7  练习    93

6  选择结构    95

6.1  if语句    95

6.1.1  if-else结构    100

6.1.2  复合条件测试    103

6.1.3  嵌套的if语句    106

6.1.4  else if结构    107

6.2  switch语句    117

6.3  Boolean变量    120

6.4  条件运算符    125

6.5  练习    127

7      129

7.1  分离接口和实现文件    129

7.2  合成存取方法    134

7.3  使用点运算符访问属性    136

7.4  具有多个参数的方法    137

7.4.1  不带参数名的方法    139

7.4.2  关于分数的操作    140

7.5  局部变量    142

7.5.1  方法的参数    143

7.5.2  static关键字    144

7.6  self关键字    147

7.7  在方法中分配和返回对象    148

7.8  练习    151

8  继承    153

8.1  一切从根类开始    153

8.2  通过继承来扩展:添加新方法    158

8.2.1  Point类和对象创建    162

8.2.2  @class指令    163

8.2.3  具有对象的类    167

8.3  覆写方法    171

8.4  抽象类    175

8.5  练习    176

9  多态、动态类型和动态绑定    179

9.1  多态:相同的名称,不同的类    179

9.2  动态绑定和id类型    182

9.3  编译时和运行时检查    184

9.4  id数据类型与静态类型    185

9.5  有关类的问题    187

9.6  使用@try处理异常    192

9.7  练习    194

10  变量和数据类型    197

10.1  对象的初始化    197

10.2  作用域回顾    200

10.2.1  控制实例变量作用域的指令    200

10.2.2  全局变量    202

10.2.3  静态变量    204

10.3  枚举数据类型    207

10.4  typedef语句    211

10.5  数据类型转换    212

10.6  位运算符    214

10.6.1  按位与运算符    215

10.6.2  按位或运算符    216

10.6.3  按位异或运算符    217

10.6.4  一次求反运算符    217

10.6.5  向左移位运算符    219

10.6.6  向右移位运算符    219

10.7  练习    220

11  分类和协议    223

11.1  分类    223

11.2  类的扩展    228

11.3  协议和代理    230

11.3.1  代理    233

11.3.2  非正式协议    233

11.4  合成对象    234

11.5  练习    236

12  预处理程序    239

12.1  #define语句    239

12.2  #import语句    246

12.3  条件编译    247

12.3.1  #ifdef#endif#else#ifndef语句    247

12.3.2  #if#elif预处理程序语句    250

12.3.3  #undef语句    251

12.4  练习    251

13  基本的C语言特性    253

13.1  数组    254

13.1.1  数组元素的初始化    256

13.1.2  字符数组    257

13.1.3  多维数组    258

13.2  函数    260

13.2.1  参数和局部变量    262

13.2.2  函数的返回结果    263

13.2.3  函数、方法和数组    267

13.3  块(Blocks    268

13.4  结构    272

13.4.1  结构的初始化    275

13.4.2  结构中的结构    276

13.4.3  关于结构的补充细节    278

13.4.4  不要忘记面向对象编程思想    279

13.5  指针    279

13.5.1  指针和结构    283

13.5.2  指针、方法和函数    285

13.5.3  指针和数组    286

13.5.4  指针运算    297

13.5.5  指针和内存地址    299

13.6  它们不是对象    299

13.7  其他语言特性    300

13.7.1  复合字面量    300

13.7.2  goto语句    300

13.7.3  空语句    301

13.7.4  逗号运算符    301

13.7.5  sizeof运算符    302

13.7.6  命令行参数    303

13.8  工作原理    305

13.8.1  事实#1:实例变量存储在结构中    305

13.8.2  事实#2:对象变量实际上是指针    306

13.8.3  事实#3:方法是函数,而消息表达式是函数调用    306

13.8.4  事实#4id类型是通用指针类型    307

13.9  练习    307

14  Foundation框架简介    309

14.1  Foundation文档    309

15  数字、字符串和集合    313

15.1  数字对象    313

15.2  字符串对象    318

15.2.1  NSLog函数    318

15.2.2  description方法    319

15.2.3  可变对象与不可变对象    320

15.2.4  可变字符串    327

15.3  数组对象    333

15.3.1  制作地址簿    337

15.3.2  数组排序    353

15.4  词典对象    360

15.4.1  枚举词典    361

15.5  集合对象    363

15.5.1  NSIndexSet 367

15.6  练习    370

16  使用文件    373

16.1  管理文件和目录:NSFileManager 374

16.1.1  使用NSData    379

16.1.2  使用目录    380

16.1.3  枚举目录中的内容    383

16.2  使用路径:NSPathUtilities.h  385

16.2.1  常用的路径处理方法    388

16.2.2  复制文件和使用NSProcessInfo    390

16.3  基本的文件操作:NSFileHandle  394

16.4  NSURL    399

16.5  NSBundle    400

16.6  练习    401

17  内存管理和自动引用计数    403

17.1  自动垃圾收集    405

17.2  手工管理内存计数    406

17.2.1  对象引用和自动释放池    407

17.3  事件循环和内存分配    409

17.4  手工内存管理规则的总结    411

17.5  自动引用计数(ARC    412

17.6  强变量    412

17.7  弱变量    413

17.8  @autoreleasepool    415

17.9  方法名和非ARC编译代码    415

18  复制对象    417

18.1  copymutableCopy方法    418

18.2  浅复制与深复制    420

18.3  实现协议    422

18.4  用设值方法和取值方法复制对象    425

18.5  练习    428

19  归档    429

19.1  使用XML属性列表进行归档    429

19.2  使用NSKeyedArchiver归档    432

19.3  编码方法和解码方法    433

19.4  使用NSData创建自定义档案    440

19.5  使用归档程序复制对象    444

19.6  练习    445

20  CocoaCocoa Touch简介    447

20.1  框架层    447

20.2  Cocoa Touch  448

21  编写iOS应用程序    451

21.1  iOS SDK   451

21.2  第一个iPhone应用程序    451

21.2.1  创建新的iPhone应用程序项目    454

21.2.2  输入代码    457

21.2.3  设计界面    460

21.3  iPhone分数计算器    466

21.3.1  启动新的Fraction_Calculator项目    468

21.3.2  定义视图控制器    468

21.3.3  Fraction    474

21.3.4  处理分数的Calculator    477

21.3.5  设计UI 479

21.4  小结    479

21.5  练习    481

附录A  术语表    483

附录B  地址簿示例源代码    495

 

 

阅读(1119) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~