2012-05-04 16 views
23

RubyMotion ha sido lanzado, y me pregunto, si hay una solución similar disponible, o viene para Python?Python para iOS (como RubyMotion)

+4

[Kivy] (http://kivy.org/#home) dice ser compatible con iOS, no tiene idea de lo bueno que es. –

+0

Acabo de retirar a Kivy y se ve bastante bien. iOS todavía está en desarrollo, pero parece que funciona en su mayoría. – mmopy

+0

También: http://itunes.apple.com/us/app/python-for-ios/id485729872?mt=8 – chown

Respuesta

23

RubyMotion no es un nuevo marco multiplataforma (como Kivy, Papaya, Rhodes, etc.), sino una implementación del lenguaje de programación Ruby ON TOP OF del lenguaje nativo iOS Objective-C. Debido a esto, un objeto RubyMotion ES Obj-C Objeto, pero se puede usar la sintaxis y expresiones idiomáticas dinámicas de Ruby para manejarlo, en lugar de los enfoques Objetive-C estáticos.

Aún debe aprender el SDK de Apple, simplemente hable con el código de Ruby "gratuito". Con Titatnium, por ejemplo, aprendes las API de la plataforma que funcionan en múltiples sistemas operativos, aunque a costa de las discrepancias de UI y las penalizaciones de rendimiento.

MacRuby es el progenitor de escritorio de RubyMotion, y el análogo de Python sería PyObjC. El Sourceforge site para PyObjC me parece inactivo (actualizado por última vez a finales de 2009) para que alguien tenga que revivirlo primero y luego hacer modificaciones similares (reemplazando la gestión de memoria de estilo de recolección de basura con alguna forma de recuento automático de referencias y compilación binaria) para construir una solución Python similar para iOS.

No esperaría que caiga del cielo en el corto plazo, pero las sorpresas siempre son bienvenidas.

+4

no se puede comparar PyObjC y Macruby, PyObjC es un puente como [RubyCocoa] (http://sourceforge.net/projects/rubycocoa/) como ya dijiste MacRuby es Ruby en la parte superior del tiempo de ejecución de ObjC. Al reemplazar el recolector de basura de PyObjC no funcionará, ya que es un puente. –

+0

Gracias por aclarar, Sean. – SciPhi

+1

>> EN LA PARTE SUPERIOR del idioma nativo de iOS Objective-C. Cerrar, pero no del todo. Es una implementación de Ruby Language en la parte superior del Objective-C Runtime binary. Objective-C es una implementación del lenguaje Objective-C sobre el tiempo de ejecución de Objective-C. – johnrubythecat

1

Depende de lo que busque y para qué. Papaya hace lo que ellos llaman un motor social (para juegos realmente). Pero puedes escribir con Python para eso. http://papayamobile.com/

Cuestiones relacionadas