学习objectivec一定要先学c吗?

学习objectivec一定要先学c吗?... 学习objectivec一定要先学c吗? 展开
 我来答
793649368
推荐于2016-05-29 · TA获得超过1万个赞
知道小有建树答主
回答量:1241
采纳率:50%
帮助的人:778万
展开全部
  可以没有C的基础。与C在语法上还是有些区别的,当然有C的基础最好了,对理解obj-c的内存管理方面是有帮助的。
  虽然 Obj-C 是 C 的超集,但是和 C 是两种世界观。(面向过程 和 OO )

  的确, C 也可以 OO 。甚至可以说, Obj-C 不就是 C 的非常好的 OO 的例子之一嘛~
  不过,没有见过好的,基于 OO 的 C 教材(现实是,如果教材关心 OO ,一般也不会基于 C 了)。所以过程的思维可能会先入为主,那样先学 C 容易被带到沟里去。而一些老的 C 程序员(也很优秀)写的 Java 代码也证实了这点,看的我死的心都有。

  其实直接看 Obj-C 也无不可。 iOS App 的 Obj-C 代码是高度框架化和自解释的。涉及 C 的部分一般是底层的一些实现或者自己绘图等内容,相对少用,熟悉了框架,建立了 OO 的概念再深入不迟。(既从 Obj-C -> C )

  如果是从 C -> Obj-C ,从过程到 OO 的提升就是人为制造的麻烦(虽然也不太大但是毕竟没有必要)。
  而且,你会发现 C 的很多东西 Obj-C 用不到。比如 C 中分量很重的内存地址操作, iOS 的 Obj-C 程序就几乎不涉及。而 Obj-C 绘图部分的一些代码很 C ,一般的 C 教程却不怎么讲,那些内容一般会放到另外一本书里面: 计算机图形学-C 语言。

  当然无论是从 Obj-C -> C 还是从 C -> Obj-C , C 的一些相关知识都是需要的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式