【问题标题】:Good Learning Method for Objective-C? [closed]Objective-C 的良好学习方法? [关闭]
【发布时间】:2010-10-04 21:30:12
【问题描述】:

我知道这个问题必须被问上百万次并且不容易回答,因为没有确定的方法。

我一直在玩各种 Xcode 和 Objective-C 中的东西,但是我似乎找不到一种以有效方式学习东西的好方法。

我买了《Objective-C 2.0 中的编程》这本书,它很棒,但只是列出了看起来的基础知识。

我想学 2D 游戏开发方向,那当然是 3D 搞定了,如果那样做对吗?

我今年 17 岁,是学校/A Level 课程的最后一年,我几乎肯定会休学一年。有什么好的、知名的在线或离线(现实世界)课程?这是我的第一门编程语言。

最后一个问题是,当在线学习东西时,我过去开始构建一个功能并学习编程的某个方面,只是在添加更多内容后才发现它会减慢应用程序的速度或效率低下。关键是在特定情况下使用特定方法(使用多种方法来做同一件事)还是使用其中任何一种方法并在您的应用程序中对其进行改进以使其顺利运行?抱歉,到目前为止,我很难知道我什么时候经验不足。

【问题讨论】:

    标签: iphone objective-c macos ipad


    【解决方案1】:

    Cocoa and Objective-C Resources 帮助了我很多。它比 iOS 更侧重于 Mac 编程。

    How-to articles for iPhone development, Objective-C很好地覆盖了iOS端。

    【讨论】:

      【解决方案2】:

      您需要一些书籍/课程才能打下坚实的基础。

      在您的具体情况下,我建议(按顺序):

      • 一本基本的 c++ 书籍(有关如何与 objc 集成,请参阅 Objective-c++ 扩展)
      • 使用一些编写良好的 C++ 程序
      • 然后开始创建一些您自己的简单 c++ 程序
      • 然后是一本基本的 objc 书籍(好像你已经拥有了 - 另外,请参阅下面的注释)
      • 使用一些编写良好的 objc 程序
      • 然后开始创建一些您自己的简单 objc 应用程序
      • OpenGL 是一种您可能会用于低级图形(iOS 和其他平台)的技术,因此请开始修改/扩展一些编写良好的 OpenGL 程序,然后创建一些您自己的程序。

      大部分为 iOS 游戏编写的代码不是 objc。您可能还想查看 CoreGraphics.framework。

      【讨论】:

      • 如果他正在学习 ObjC 以在 iPhone OS 上工作,那么客观 c++ 会不会有点多余?我还没有遇到过需求。
      • @Alex Gosselin objc++ 只是语言语法的扩展(例如,没有组合的 objc/c++ 对象)。 c++ 对于低级 ood 很重要。 objc 对于与苹果的 iOS 库的接口很重要。仅将 c 和 objc 用于游戏/图形开发只会使生活变得不必要地困难(恕我直言)。这里的顺序很重要,因为当你知道你(最终)会使用 c++ 时,学习 c 通常是一个错误。
      • 没错,c++ 可能更容易用于图形,但我认为对于初学者来说混合 objC 和 openGL 可能比添加第三种语言(有点)更容易。不过,这只是我的看法,取决于乔希有多好。
      • 根据我的经验,c++ 开发人员不必非常努力地正确使用 c 或学习 Objective-c。 c 开发人员必须尝试正确地学习 c++,并且必须“忘掉”他们已经养成的许多 c 习惯(c/objc 开发人员在获得丰富的语言经验之前不会正确地使用 c++ 程序)。 afaik、c++(带有一些 objc 和一些 c)是他最终想要完成的通用语言。考虑到这一点,我认为 c/objc 是对初学者结果更直接的结果,但对中间开发(及以后)的路径要慢得多。我犯了这个错误
      • (pt.2) 我花了(很多)更多的时间才到达我最终想要(呃,需要)的地方。
      【解决方案3】:

      对于 iPhone,从你手头的书开始,从头到尾通读一遍,做所有的练习。我做了同样的事情,这是一个巨大的帮助。

      接下来,您需要了解可可的基础知识,首先要制作没有大量 3D 内容的更简单的应用。我强烈推荐斯坦福大学关于 iPhone 编程的 iTunes U 课程(在 iTunes 商店免费)。整个课程都贴出来了,真的教的很好。我用了你的书和那门课程,你会进步很多。

      接下来了解 Core Graphics。我在这方面没有做太多细节,但它会帮助你处理 2D。

      重要的是要花时间完成每个步骤,并确保在继续之前真正了解一个方面,否则您将完全迷失方向。

      在 Core Graphics 之后,继续使用 Open GL 或 iPhone 版本(我认为是 OpenGL ES)。

      这样你学习游戏的基础就很扎实了。

      所有这些都可能需要您几个月的时间。祝你好运。

      【讨论】:

        【解决方案4】:

        最好的学习方式是做。你打算开发什么样的游戏?你提到了 2D 游戏,但是什么样的 2D 游戏呢?如果您对 2D 棋盘游戏感兴趣,请尝试 GeekGameBoard。它使用核心动画。

        请看一下 Cocos2D,它是一个很好的构建游戏的框架。

        最重要的是,您必须了解游戏背后的机制。例如,如何从一个 satte 切换到另一个 satte。上面提到的 GeekGameBoard 是一个很好的完整参考。或者您可以获得“iPhone 高级项目”。在我的脑海中,我记得在第二章(或第三章?)中,一位流行的 iPhone 游戏的作者提供了他的游戏简化版的资源。在第一章中,《深绿棋》的作者将向您介绍制作出色动画游戏的基本知识。

        【讨论】:

        • 边做边学是真正学习的唯一途径。我发现,当遵循示例并且它运行良好时,我并没有真正学到很多东西,但是当示例不能完全按照所提供的那样工作时 - 我必须弄清楚如何使其工作,这个过程更具教育意义。
        猜你喜欢
        • 2010-11-25
        • 2015-11-03
        • 2010-09-15
        • 2011-08-05
        • 1970-01-01
        • 1970-01-01
        • 2010-11-15
        • 2010-09-19
        • 2010-10-18
        相关资源
        最近更新 更多