为何是Objective-C?

来源:互联网 发布:百度高级优化师 怎么考 编辑:程序博客网 时间:2024/05/01 13:49
Cocoa框架选择了Objective-C作为开发语言有许多方面的原因。首先,也是最主要的原因,它是一个面向对象 的语言。Cocoa框架中的很多功能只能通过面向对象的技术来呈现,本文档将对Cocoa框架的功能进行具体阐述并介绍怎样使用它们。其次,是标准C语言的一个超集,现存的C程序无需重新开发就能够使用Cocoa软件框架,并且您可以在Objective-C中使用C的所有特性。您可以选择什么时候采用面向对象的编程方式(例如定义一个新的类),什么时候使用传统的面向过程的编程方式(定义数据结构和函数而不是类)。

此外,Objective-C是一个简洁的语言,它的语法简单,没有歧义,并且易于学习。 因为易于混淆的术语以及抽象设计的重要性,对于初学者来说,面向对象编程的学习曲线比较陡峭。象Objective-C这种结构良好的语言使得成为一个熟练的面向对象程序员更为容易。 介绍Objetive-C的章节也如同其语言本身一样简洁。

和其他的基于标准C语言的面向对象语言相比,Objective-C对动态机制支持得更为彻底。编译器为运行环境保留了很多对象本身的数据信息,因此某些在编译时需要做出的选择就可以推迟到运行时来决定。这种特性使得基于Objective-C的程序非常灵活和强大。例如,Objective-C的动态机制提供了两个一般面向对象语言很难提供的优点:
Objective-C支持开放式的动态绑定,从而有助于交互式用户接口架构的简单化。例如,在Objective-C中发送消息既无需考虑消息接收者的类也不用考虑方法的名字,从而可以允许用户在运行时再做出决定,也给了开发者在设计时极大的自由(术语“动态绑定” ,“消息“,“消息接收者”, “类”将在随后的章节中进行介绍)。
Objective-C的动态机制成就了各种复杂的开发工具。运行环境提供了访问运行中程序数据的接口,所以使得开发工具监控Objective-C程序成为可能。

注意:作为编程语言来说,Objective-C有很悠久的历史。它在二十世纪八十年代早期被发明于Stepstone公司,作者是Brad Cox和Tom Love。八十年代后期,NeXT计算机有限责任公司获得了使用Objective-C来开发NeXTStep框架的授权,也就是后来的Cocoa。NeXT在多方面对Objective-C进行了扩展,例如协议部分。
原创粉丝点击