很多人觉得学IOS入门很难,后期会比较容易一点。对我来说,其实也不是那么危言耸听
Objective-C诞生于
20 世纪 80 年代,由Brad Cox 发明,意在将流行的、可移植的 C 语言与优雅的 Smalltalk 语言结合在一起。Objective-C 是 C
语言的一个扩展集,它以 C 语言为基础,在语言中添加了一些微妙但意义重大的特性。
苹果公司的iphone平台采用Objective-C做为native
language的开发,Objective-C的内核是C语言的,并基于C语言实现OOP的一些特性。Objective-C是对C语言的扩展,这和C++的前身Better-c有很大的相似之处,Objective-C的新版本里实现了和Java类似的垃圾回收机制,但基于iphone平台的资源限制,iphone平台并不支持垃圾回收机制。
0c无非就是c的衍生,拓展了面向对象的知识。它和c++有点相像。所以可以将其与c++进行对比的学习
========
与c++的比较:
1.单一继承: Objective-C不支持多重继承,(同Java和Smalltalk),而C++语言支持多重继承。
2.
动态: Objective-C是动态定型(dynamicaly typed)所以它的类库比C++要容易操作。Objective-C
在运行时可以允许根据字符串名字来访问方法和类,还可以动态连 接 和添加类。
3.C++ 跟从面向对象编程里的Simula 67(一种早期OO语言)学派,而Objecive-C属于Smalltalk学派。
4.在C++里,对象的静态类型决定你是否可以发送消息给它,而对Objecive-C来说,由动态类型来决定。Simula
67学派更安全,因为大部分错误可以在编译时查出。 而Smalltalk学派更灵活,比如一些Smalltalk 看来无误的程序拿到Simualr
67那里就无法通过。 从很多方面来看,C++和Objective-C的差别,与其说是技术上的, 不如说是思维方式上的。
一门语言无非就是
1.基本数据类型
2.字符串
3. 数组(指针)
4.函数
5 文件
5.继承
6.封装
7.多态
8.该语言相关特性
=======等
,如果掌握这些,基本上就可以拿下该语言最基础的东西了
oc也不是很难嘛