我正在通过Stephen Kochan的“Objective-C 2.0编程”自学Objective-C这是一本很棒的书,目前正在第二次读它,我第一次得到它的主旨,现在它是第二次真的开始下沉了。
如果您对Objective-C有中等(约)的知识,那么学习C有多难?我意识到关于首先学习哪种语言似乎存在着无休止的争论。我决定选择Objective-C,因为我对Cocoa Mac Apps / iPhone应用感兴趣。
侧注:对于那些熟悉Chipmunk Physics引擎的人......我最终开始追求C的原因是它使用C.我需要知道多少C才能充分利用它。我打算将它与使用Objective-C
的Cocos2d一起使用答案 0 :(得分:5)
鉴于C是Objective-C的严格子集,如果您已经完全了解Objective-C,那么您也知道C语言。
答案 1 :(得分:4)
没有。我学会了C,我来自C#。
然而,很难找到更新的教程/博客,以下是我使用过的一些内容:
答案 2 :(得分:2)
C和ObjC有很多重叠,但它们的模式非常不同。内存管理尤其完全不同。你如何攻击问题的方式大不相同。 ObjC完全依赖于框架并适应框架而不妨碍框架。在C中,你是最底层的;图书馆大部分时间都依赖你,而不是相反。
也就是说,如果您的目标是编写包含C库的ObjC程序,那么首先学习ObjC绝对是正确的方法,Kochan的书是一个很好的开始(其次是 Mac OS X的Cocoa编程来自Hillegass)。使用像Chipmunk或cocos2d这样的引擎会为你处理一些更难的C编程细节,这无疑有助于你轻松学习。
答案 3 :(得分:1)
基本上,C是Objective-C,没有:
此外,还有一些是Objective-C的一部分,但如果你纯粹学习了Objective-C,你可能永远不会使用它。这些实际上很有用,因为有时它们甚至是Objective-C代码中的最佳选择,当你与其他人的代码交互时,你可能碰到它们。比如:
总而言之,我认为从Objective-C迁移到C可能比从头开始学习C更容易。这只是一个猜测,我首先学习了C(大约15年前)并且已经编写了近十年的Objective C代码。
答案 4 :(得分:1)
好吧,我建议在深入研究Objective-C之前获得一些的C经验。为什么?因为Objective-C使您免受许多更复杂和有趣的编程位的影响,例如非常手动的内存管理,疯狂的指针,等等。因为Objective-C是C的严格超集,所以可能有时候你需要使用这些概念,但是没有任何C经验,它可能会非常混乱。我错误地在跳到Objective-C之前没有花足够的时间在C上,所以当我开始研究更复杂的应用程序时,我需要在C上做很多阅读。
答案 5 :(得分:0)
我在学习Objective-C之前学过C,但两者有相似之处和不同之处。 所有if语句,用于&虽然循环在C中都是相同的,但你的GTD是如何不同的。你并没有真正接触到Objective-C中的整个指针,但这在C中是非常重要的,唯一可以解决这个问题的方法就是阅读和练习。这可能看起来令人生畏,但一旦掌握了它,它就不那么糟糕了。函数与语法方法以及它们的调用方式有点不同,所以你也必须学习它,但是如果你得到一本好书(http://www.amazon.com/Programming-Language-Prentice-Hall-Software/dp/0131103628),它应该不那么难。只需阅读并练习!
我还强烈推荐斯坦福iTunes-U编程范例类,在你掌握了基础知识之后,有助于大量学习指针!作为一名年轻的程序员,它确实帮助我很好地掌握了这一切。
答案 6 :(得分:0)
指针是使C变得困难的原因,听起来好像它们不是编程Objective-C的重要部分。
答案 7 :(得分:0)