在iOS中使用Objective-C背后的哲学是什么?为什么不使用c++呢?
What is the philosophy behind using Objective-C in iOS? Why not C++?
参与c++项目十多年,为什么Objective-C被用作iOS的基础编程语言,这对我来说真的是一个大问题。看一下Objective-C规范,它似乎比c++更动态地将变量绑定到它们的类型,因此它并不比c++更有效。有人能告诉我使用这种语言背后的哲学是什么吗?
苹果公司收购了Next电脑公司及其操作系统NeXTSTEP,后者提供了objective-c API。
Mac OS X基于NeXTSTEP系统,反过来,iOS基于OS X,所以这是一个自然的进展。这也解释了为什么很多类都是以NS.
阅读或询问Tom Love &Brad Cox:p
基本上,它们都是使C面向对象的并行开发。NeXT选择了Objective c,因此苹果公司现在使用它。
阅读:http://luminaryapps.com/blog/objective-c-a-history/
iOS是Mac OS X, ON MOBILE!在Mac OS X上;通用语言是Objective-C。
反过来,这是因为Mac OS X是NeXTStep, ON A Mac !;NeXTStep框架使用的语言是Objective-C。
已经指出,Objective-C早于c++;而基于Objective-C的SmallTalk虽然是一种简洁的语言,但并不适合大规模开发。在许多方面,这是有限的选择中最好的,但它仍然经受住了时间的考验,即使在今天也很好。
相关文章:
- 为什么不;名字在地图上是按顺序排列的吗
- 这个指针和内存代码打印是什么?我不知道是打印垃圾还是如何打印我需要的值
- 为什么此指针值不能转换为整数的规则是什么?
- 通过构造函数方法输出的类到类类型转换是 5500 为什么不是 5555
- 为什么左值不能改变自己。左值用户是什么意思?
- 抽象类的需求是什么?为什么要通过其基类访问派生类方法?在C++
- 为什么我会遇到细分错误?将输出作为数字而不是字符串的原因是什么?
- C++ 个字符数据类型的用途是什么?为什么不直接使用字符串?
- 引用到引用在C++中是什么意思?(不是右值引用)
- {1, 2} 是值吗?如果是,它的类型是什么?如果不是,为什么可以将其分配给初始值设定项列表
- C++考试修订版,不确定为什么正确答案是什么
- 例外C++,我只是不明白为什么输出是什么
- 在iOS中使用Objective-C背后的哲学是什么?为什么不使用c++呢?
- c++中的回调地狱是什么?为什么它会泄漏内存?
- C++中的游戏编程,这条老行是什么,为什么它不起作用?
- 为什么FLT_MAX和FLT_MIN不是正无穷大和负无穷大,它们的用途是什么?
- 那么"this"的类型是什么?为什么"this"不是左值?
- 我怎么知道是什么使不完整类型不完整的错误:对指向不完整类型的指针进行算术运算
- 为什么要使用SphinxAPI而不是SphinxQL,具体原因是什么
- LookupAddressForName的作用是什么?为什么它如此缓慢