Creo que RubyMotion es una herramienta excelente, no me malinterpreten, pero realmente está hecho para los desarrolladores de Ruby (hay algunos beneficios más allá de la sintaxis y la estructura, el editor / IDE agnóstico, la expresividad, la metaprogramación, etc.). Si tus niveles de habilidad son prácticamente los mismos en Obj-c y Ruby, no seguiría la ruta RubyMotion.
Como principiante, si bien es posible que pueda obtener algunas aplicaciones básicas y ejecutarlas más rápido con RubyMotion, probablemente tendrá que dedicar tanto tiempo a aprender cómo implementar la mayoría de las características de su aplicación planificada como escribiría Obj-C en Xcode. Si bien hay algunos recursos excelentes para usar RubyMotion, encontrará muchos más disponibles en Obj-C.
En lo que respecta a un mercado laboral de RubyMotion, aunque esto es puramente especulativo, diría que hay pocas posibilidades de que encuentres un trabajo para construir aplicaciones iOS en Ruby. En mi opinión, las empresas que funcionan con iOS, o al menos tienen una parte de su interés en los dispositivos móviles, no se comprometerán con RubyMotion vs. Obj-C. (Puede ver una lista de aplicaciones en el directorio de aplicaciones de RubyMotion: RubyMotion – Aplicaciones) Si bien actualmente no existe una desventaja real para crear una aplicación en RubyMotion, es posible que algún día Apple prohíba el uso de dichas cadenas de herramientas para crear aplicaciones, aunque esto así lo explica RubyMotion:
- ¿Cuál es el costo mínimo para hacer una aplicación de iOS?
- ¿Cómo puedo silenciar un mensaje grupal de iOS?
- ¿Por qué el código Swift se compila tan lentamente?
- ¿IOS tiene API de seguimiento de movimientos oculares?
- ¿Cómo se comunican las partes MVC entre sí?
Las solicitudes enviadas a la App Store deben cumplir con las Pautas de revisión dictadas por Apple. RubyMotion implementa un dialecto de Ruby que se ajusta a esas reglas. Las aplicaciones de RubyMotion están completamente compiladas, no descargan ni interpretan código y están utilizando API públicas de iOS a través de la misma maquinaria que las aplicaciones normales de Objective-C.
Además, es posible que la cadena de herramientas no se mantenga como lo está hoy (dudo que este sea el caso, Laurent & co no parece que se detengan pronto). Si este es el caso, puede volverse incompatible con las nuevas versiones de iOS cuyas API no se implementan en RubyMotion.
RubyMotion es una herramienta increíble, y se lo recomendaría a cualquiera que ya se sienta cómodo con el lenguaje de programación Ruby. Es genial trabajar con él, especialmente las pruebas, y hay algunas aplicaciones hermosas desarrolladas sobre él. Sin embargo, según la cantidad de experiencia que ha compartido con Ruby / Obj-C, diría que será más beneficioso para usted si puede escribir aplicaciones nativas para iOS en Obj-C.
ACTUALIZAR:
Sin embargo, si eres experto tanto en Ruby como en Obj-C, RubyMotion puede ser una herramienta increíblemente poderosa e imprescindible. La capacidad de crear para iOS, pero escribir y pensar en Ruby es excelente para la creatividad, la productividad y la diversión.
Si tienes experiencia en ambos idiomas, ¡definitivamente compruébalo! No quería que esta publicación alejara a nadie del aprendizaje.
Otros artículos de RubyMotion de interés:
- nitron – datos como ActiveRecord
- BubbleWrap – ayudantes / envoltorios para más APIs similares a Ruby
- Libro: RubyMotion: Desarrollo de iOS con Ruby
Si está utilizando RubyMotion para su proyecto iOS, ¡envíeme un mensaje!