在iOS中使用Objective-C的理念是什么?为什么不用C ++?

时间:2011-12-13 07:39:57

标签: c++ objective-c c ios

参与C ++项目已超过十年,对于我来说,为什么Objective-C被用作iOS上的基本编程语言真的是一个很大的问题。看一下Objective-C规范,它似乎在将变量绑定到它们的类型时比C ++更具动态性,因此它不比C ++更有效。有人能告诉我使用这种语言背后的哲学是什么吗?

4 个答案:

答案 0 :(得分:3)

没有哲学,Apple购买了Next Computer及其操作系统NeXTSTEP,它提供了一个客观的API。

Mac OS X基于NeXTSTEP系统,反过来,iOS基于OS X,因此它是一个自然的进步。这也解释了为什么一大堆课程都以NS开头。

答案 1 :(得分:0)

阅读this或询问Tom Love&布拉德考克斯:p

答案 2 :(得分:0)

基本上,它们都是使C面向对象的并行开发。 NeXT选择了Objective c,因此Apple现在使用它。

阅读本文:http://luminaryapps.com/blog/objective-c-a-history/

答案 3 :(得分:0)

iOS是Mac OS X,ON MOBILE!在Mac OS X上;通用语是Objective-C。

反过来,这是因为Mac OS X是NeXTStep,ON A MAC! NeXTStep框架使用的语言是Objective-C。

正如已经指出的,Objective-C早于C ++;而ObjectiveTalk C所基于的SmallTalk,虽然是一种简洁的语言,但并不适合大规模开发。在许多方面,它是有限选项中最好的,但它经受住了时间的考验,并且即使在今天也能保持良好状态。