Learn Objective‐C
Objective-C是一种在苹果的Mac OS X和iOS操作系统上进行软件开发的主要编程语言。它在C语言基础上加入了Smalltalk风格的消息传递机制,是一种面向对象的编程语言。Objective-C对于拥有面向对象编程和C语言基础的开发者来说,学习起来相对容易,因此本书《Learn Objective-C》被推荐给那些想要快速掌握Objective-C编程的初学者。 书中首先强调了面向对象的基本概念和C语言知识对于学习Objective-C的重要性。如果对C语言不够熟悉,建议先阅读相关的C语言指南。Scott Stevenson编写的指南提供了Objective-C编程的入门知识,包括方法调用的语法、对象的创建、多参数方法的调用、访问器的使用以及类与对象的交互等。 在Objective-C中,方法调用使用方括号语法,例如`[object method]`或`[object methodWithInput:input]`。方法可以返回值,使用方式如`output = [object methodWithOutput]`。类的方法可以被用来创建对象,例如通过`[NSString string]`创建一个NSString类的实例。在这个例子中,使用了`id`类型,它是一种通用对象类型,可以代表任何类型的对象。但是,通常推荐指定具体的对象类型,如`NSString *myString = [NSString string]`,这样可以利用编译器进行类型检查,提高代码的安全性和可维护性。 在Objective-C中,所有的对象变量都是指针类型。在方法的嵌套调用方面,例如`[NSString stringWithFormat:[prefs format]]`,应尽量避免过多嵌套,以保持代码的可读性。当方法需要多个输入参数时,可以在方法名中用冒号分隔参数名,如`-(BOOL)writeTo***`,调用时可以使用如下语法:`BOOL result = [myData writeTo***"/tmp/log.txt" atomically:NO]`。尽管参数名被拆分,但在运行时,方法的名字实际上是`writeTo***`。 Objective-C语言中实例变量默认是私有的,因此通常需要通过访问器方法(accessor methods)来获取或设置实例变量的值。例如,使用`[photo caption]`来获取一个名为`caption`的属性值。从Mac OS X 10.5版本开始,Objective-C 2.0新增了点语法,可以更直观地访问属性,例如`photo.caption = @"Day at the Beach"`。但点语法只能用在属性的setter和getter方法上,不适用于普通方法。 创建对象有两种主要方式,一种是通过类方法如`[NSString string]`,另一种是使用`alloc`和`init`方法组合来手动创建对象。前者通常创建一个自动释放(autoreleased)的对象,后者则创建一个拥有者管理(owner-managed)对象。在声明对象变量时,通常推荐指定对象的具体类型,如`NSString *myString`,以获得类型安全的好处。 书中还提及了一些编程实践的建议,比如尽量避免在一行代码中进行多层嵌套调用,以保持代码的清晰和可读性。此外,译者在前言中提到自己在Windows平台上有软件开发经验,而在学习Objective-C时感到有所挑战,因此他对翻译内容的准确性持有谨慎态度,并希望读者能够提供反馈。 整本书的翻译工作是由一位名叫cchenhao的译者完成的,他有六年的软件开发经验,但主要在Windows平台上工作。最近他开始尝试在Mac上开发,并安装了leopard系统,同时也是Objective-C的新手。他愿意对翻译中的错误或不足之处承担建议和批评,并提供了自己的邮箱以接收反馈。 这本书是一个很好的起点,特别适合已经熟悉C语言和面向对象编程概念的开发者,他们可以借助此书迅速进入Objective-C编程的世界。
剩余12页未读,继续阅读
- 粉丝: 190
- 资源: 391
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助