Mostrando entradas con la etiqueta programacion. Mostrar todas las entradas
Mostrando entradas con la etiqueta programacion. Mostrar todas las entradas

lunes, 2 de noviembre de 2009

miércoles, 8 de abril de 2009

Misterios de la programación para Mac OS X

Después de darle algunas vueltas, estas son algunas de las conclusiones a las que he llegado:
  • XCode es la herramienta fundamental para programar para Mac OS X
  • Los programas con ventanas se programan en Cocoa
  • Cocoa utiliza Objetive-C
  • Objective-C es un superset de C que trabaja con objetos.
  • Objective-C es conceptualmente fácil de aprender y se puede entender en una o dos horas (otra cosa es la API del Mac OS X)
  • Objective-C no es sólo para Mac OS X y tanto el compilador como el debugger son los de la Free Software Fundation.
  • Se puede mezclar codigo C con C++ y Objective-C
  • El iPhone y el iTouch se programan tambien con XCode

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