【问题标题】:What is missing in Objective-C that you don't want to program with it [closed]Objective-C中缺少你不想用它编程的东西[关闭]
【发布时间】:2011-04-10 21:43:05
【问题描述】:

现在 Apple relaxed the restrictions 在开发人员工具/程序上,我想知道是什么吸引开发人员使用 Apple 默认提供的其他语言,Objective-C,编程非常有趣。哪些缺失的功能让您不使用它进行编程,而是使用其他东西?

【问题讨论】:

  • 为什么要“关闭”? SO stackoverflow.com/questions/374147/what-is-boost-missing 中有类似的线程吗?
  • 一个可能的区别是 Boost 是一组任何人都可以贡献的库,所以想要的列表基本上是一组“行动项目”,任何人都想使用它们。重新设计 Objective-C 是一个完全不同的命题。
  • 由于 Objective C 是 ANSI C 的适当超集,您可能还想问 C 缺少什么。
  • @Brad Larson,跑题了,但我很欣赏你的截屏视频!

标签: iphone objective-c mobile ios


【解决方案1】:

我已经将几个小型语言解释器(供我自己使用,不用于应用商店分发)移植到 iPhone。这使我可以在旅途中编写简短的 sn-ps 代码,而无需携带我的 Mac,并在本地运行它们。我不知道任何小型的 Objective C 解释器,而且该语言并不是真正为交互式使用而设计的。

【讨论】:

    【解决方案2】:

    我最近用 Python 编写了一些网络代码,然后不得不将其翻译成 Objective-C 以在 iPad 上使用。典型的一行清晰的 Py​​thon 会变成五行或十行忙碌的 C。我只是在高级语言中工作得更快;语言抵抗力更小,需要填写的表格更少。

    【讨论】:

      【解决方案3】:

      在 Objective-C 中测试一些概念有时设置起来有点乏味。有时您只是想看看单个方法是如何工作的,或者想了解一个对象的功能以了解它是如何工作的。

      设置新项目有点乏味,将测试代码合并到新项目中并不总是可行的。

      在这种情况下,我会做以下两件事之一:

      1. 保留一个专门用于测试的空项目
      2. 下拉到终端并使用irb(或 PyObjC)在 Ruby 或 Python 中使用对象。

      简而言之,缺少的是以解释方式使用 Objective-C 的能力。您必须使用另一种语言(如 Ruby 或 Python)来执行此操作。

      【讨论】:

        【解决方案4】:

        我还没有做过任何 iPhone 开发,但总的来说,有几个原因:

        • 跨平台开发
        • 其他语言更适合您的编码风格
        • 另一种语言是完成这项工作的更好工具
        • 您熟悉其他语言,没有时间/预算/动力来学习 Objective-C
        • 现有库/代码库
        • 您可能想要使用的特定工具

        【讨论】:

          【解决方案5】:

          缺乏 Objective-C 专业知识或其他语言的大型/复杂代码库是常见原因。

          跨平台编码可能是另一种情况。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2013-10-11
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-09-17
            相关资源
            最近更新 更多