jueves, 22 de enero de 2009

Cocoa vs. Carbon

Como programador aficionado (por llamarlo de alguna forma), uno de las principiales dudas que he tenido al pasarme al Mac OS X es esta.

Desde que me puse en serio con la programación, he intentado que las cosas que desarrollo sean lo más cross-platform posible. Eso no es problema porque gran parte de mis programas los hago en ANSI C o en PHP y esos son completamente compatibles. El problema viene cuando me meto con ls gráficos y demás. Si bien SDL y OpenGL son cross-platform, a la hora de programas y compilar es cómodo contar con un entorno de desarrollo adecuado. En Windows, podía utilizar el Visual Studio y compilar mis programas. En Linux, símplemente recompilaba las cosas desde el terminal. Pero ahora que no tengo Windows, tengo que mirar hacia otras soluciones.

Siempre puedo usar soluciones open source de esas que son multi plataforma y me permiten aprender a usar un entorno que me podría acompañar en todos los sistemas, pero no voy a desaprovechar la oportunidad de usar el entorno de desarrollo de Apple (gratuito) y poder trastear con el Objective C y otras cosas que lleva. Entonces me encuentro con la duda planteada.

Programar en Cocoa o en Carbon. Según leo:

...the distinction of how the other two APIs -- Carbon and Cocoa -- fit together has been confusing...

...the right way to look at the two frameworks is not side by side as all of Apple's marketing material would indicate, but as Cocoa building on top of Carbon.

...Carbon is the procedural native framework, and that Cocoa is the object-oriented native framework of OS X building on Carbon.

Así que la respuesta no era tan complicada. Con esa explicación uno ya puede estar más tranquilo a la hora de ponerse manos a la obra. :D

1 comentario:

Unknown dijo...

Podria explicarme la diferencia? no entiendo muy bien en ingles :s