天天看点

黑马程序员---成长之路-----OC之基础篇OC的概述

------<a href="http://www.itheima.com" target="_blank" rel="external nofollow"  target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流!
           

第一讲 C与OC的关系  

在学完C语言之后,知道C的重要性,C是在程序领域里的基础,重中之重,无论你学哪种编程语言,C必定是你首先要掌握的东西。OC实际上是在C的基础上创立的语言,OC中包含了C,C中所有的语法规则在OC中依然实用,但是OC又有其新增加的语法。  

第二讲 OC与C的学习差异  

首先我们来看源文件:  

C中的源文件是以.c为后缀的  

OC中的源文件是以.m为后缀的

接着来看数据类型的对比:

黑马程序员---成长之路-----OC之基础篇OC的概述
黑马程序员---成长之路-----OC之基础篇OC的概述

前面说过,C中所有的语法规则在OC中都实用,表面看起来学OC和C没有什么不同,OC中只是增加了一些新的数据类型,只要学会这些新的数据类型就万事大吉了。其实不然,如果真是那样,那么创建这门新的语言就完全没有必要了,在我看来OC和C在语法上可以说是有传承有创新,main函数依然是程序执行的入口,依然是按顺序往下执行,但是在刚学的时候,总是感觉有什么地方是怪怪的,其实这就是C和OC 的最大的不同之处,就是所用思维的不同,C是一门面向过程的语言,而OC是一门面向对象的语言。  

第三讲 面向过程与面向对象  

面向过程与面向对象其实并不好解释,这里我个人的理解:其实说的通俗点,面向过程就是直线型思维,一步一步的往下执行,而面向对象其实就是一种指挥型思维,main函数是一个指挥部,指挥着类与对象,让其按照命令去执行。举例来说:就拿吃饭来说,面向过程的思维是这样的:种一种菜,摘菜,洗菜,炒菜,吃菜,这是一个完整的过程,只要这样才能吃上;而面向对象的思维是这样的:妈妈选择做什么菜,妈妈做好菜喂我吃。很明显,面向对象和面向过程有很大的区别。  

我认为,语法和数据类型不是学习的难点,其实学习的难点在于思维,在刚学过C之后的思维很难一下子转变过来,要学好OC首先的有面向对象的思维。