【问题标题】:Python for iOS (like RubyMotion)适用于 iOS 的 Python(如 RubyMotion)
【发布时间】:2012-05-14 11:01:53
【问题描述】:

RubyMotion 已发布,我想知道是否有类似的解决方案可用,或者 Python 即将推出?

【问题讨论】:

  • Kivy 声称支持 iOS - 不知道它有多好。
  • 刚刚检查了 Kivy,它看起来还不错。 iOS 仍在开发中,但看起来它大部分都可以正常工作。
  • Re: Python for iOS (previous link),据我所知,它不能回调Objective C/Cocoa 组件?

标签: python rubymotion


【解决方案1】:

RubyMotion 不是一个新的跨平台框架(如 Kivy、Papaya、Rhodes 等),而是在原生 iOS 语言 Objective-C 之上的 Ruby 编程语言的实现。因此,RubyMotion 对象IS 是 Obj-C 对象,但您可以使用动态 Ruby 语法和惯用语来处理它,而不是使用面向静态的 Objective-C 方法。

您仍然必须学习 Apple SDK,只需使用“免费”的 Ruby 代码与它交谈。例如,使用 Titatnium,您可以了解该平台的 API 可以在多个操作系统上运行,尽管代价是 UI 不匹配和性能损失。

MacRuby 是 RubyMotion 的桌面祖先,它的 Python 类似物是 PyObjC。 PyObjC 的 Sourceforge site 在我看来处于休眠状态(最后一次更新是在 2009 年底),所以有人必须先恢复它,然后进行类似的修改(用某种形式的自动引用计数和二进制编译替换垃圾收集式内存管理)以便为 iOS 构建类似的 Python 解决方案。

我不认为它会很快从天而降,但总是欢迎惊喜。

【讨论】:

  • 你不能真正比较 PyObjC 和 Macruby,PyObjC 是像 RubyCocoa 这样的桥梁,正如你已经说过 MacRuby 是 ObjC 运行时之上的 Ruby。通过从 PyObjC 替换垃圾收集器将不起作用,因为它是一个桥。
  • >>在原生 iOS 语言 Objective-C 之上。关闭,但不完全。它是基于 Objective-C 运行时二进制文件的 Ruby 语言实现。 Objective-C 是 Objective-C 语言在 Objective-C 运行时之上的实现。
【解决方案2】:

取决于你的追求和目的。木瓜做他们所谓的社交引擎(真的是游戏)。但是您可以为此使用 Python 编写代码。 http://papayamobile.com/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-06
    相关资源
    最近更新 更多