ruby macos macruby ruby-cocoa

Debería aprender MacRuby o RubyCocoa



macos ruby-cocoa (3)

Desde que Chuck te respondió, las cosas cambiaron bastante, MacRuby ahora usa LLVM, permite la compilación de AOT y es bastante estable y mucho más rápido de lo que solía ser. El lado de ruby ​​de las cosas todavía necesita algo de trabajo para ser 100% compatible, pero mientras escribo esta respuesta, 0.5 aún está en beta y debería ver las bibliotecas de ruby ​​que son compatibles muy rápidamente.

Tengo ganas de aprender el desarrollo de mac con ruby, pero no estoy seguro de a cuál ir. RubyCocoa ha existido por más tiempo, pero creo que MacRuby lo superará a largo plazo.

¿¿Alguna sugerencia??


RubyCocoa es más madura y mejor probada. MacRuby es más sencillo y está mejor diseñado en general. MacRuby también es tan estable como una silla de jardín sentada en una pelota de playa. Seriamente. Definitivamente es el que quieres usar a largo plazo, pero aún no está allí. No son tan diferentes que tendrías que "aprender" uno frente al otro. Ambos son solo Ruby con acceso a las API de Cocoa. Se trata más de conocer las API de Cocoa que de cualquier otra cosa.

Recomendaría aprender Cocoa con Objective-C. Una vez que tenga un buen conocimiento de los conceptos centrales del marco (que se basan en Objective-C), entonces puede usar Ruby si aún lo desea.

Actualización 2011

Lo anterior ya no es cierto de MacRuby. Es muy sólido y lo suficientemente rápido para hacer la mayoría de las aplicaciones de Cocoa en Ruby puro. El equipo de MacRuby también se ha esforzado por ser compatible con casi todos los marcos del sistema, incluso los de C. Si te gusta Ruby y quieres desarrollar Mac, definitivamente es algo a tener en cuenta. Ya no hay razón para elegir RubyCocoa, a menos que necesite soportar versiones antiguas de OS X o PowerPC (MacRuby es estrictamente Intel 10.5+). Las advertencias restantes:

  • Tener que incluir MacRuby.framework en sus aplicaciones pone un límite inferior alto en el tamaño del paquete (un par de docenas de MB para "Hello World" IIRC)

  • Aunque es estable en general, aún es un software beta muy nuevo, por lo que hay algunas arrugas en los rincones menos utilizados de las bibliotecas (por ejemplo, los punteros tienen algunas peculiaridades) y algunas decisiones de diseño no son definitivas (por ejemplo, el soporte de concurrencia es evolucionando rápidamente)

  • La documentación sigue siendo un trabajo en progreso y está rezagada con respecto al lenguaje en rápido movimiento. Una gran cantidad de artículos que encontrará sobre MacRuby sugieren que HotCocoa es la forma fresca y original de crear aplicaciones; es un experimento genial, pero ahora es un software de abandono con algunas fallas críticas que lo hacen inadecuado para el desarrollo de aplicaciones a gran escala. La cadena de herramientas estándar de Xcode es la forma compatible de hacer el desarrollo de MacRuby.

También recomiendo aprender Cocoa con Objective-C, solo porque ese es el idioma nativo del marco y, por lo tanto, el camino de menor resistencia.


Ve con MacRuby. Es el futuro :)

Es más nuevo, mucho más rápido y mucho mejor integrado. HotCocoa también es increíble.

MacRuby es una máquina virtual Ruby implementada sobre Apple Technologies en lugar de un puente como RubyCocoa. Una cadena Ruby, por ejemplo, es una cadena NSS por naturaleza, en lugar de ser unida por el tiempo de ejecución. Es un enfoque mucho más limpio, más rápido y más sólido. También está desarrollado y patrocinado por Apple, lo que significa que podría convertirse en parte de OS X en algún momento.

También vea este post: ¿Por qué importa MacRuby?