WWDC07: Apple pone a Carbon en vía muerta

Hace casi un mes hablaba en Venera7 de que Sun por fin se había decidido a portar Open Office a OS X. Un par de semanas después, en nuestro podcast ya discutíamos sobre la primera alpha para desarrolladores.

En resumidas cuentas, la iniciativa de Sun pretende mantener el core C++ de OpenOffice y desarrollar la parte gráfica con la ayuda de Carbon, una API basada en C que Apple pensó para, en principio, portar aplicaciones C/C++ desde Classic a OS X. Así, muchas otras aplicaciones provenientes del mundo no-Apple aprovechan Carbon como puente de entrada a la potencia gráfica e interfaces de usuario de Mac. En el caso de aplicaciones Linux y demás sabores, la otra manera de portar una aplicación a OS X es usar X-Windows (Xlib), librerías de GTK+ o wxPython. Pero no es lo mismo. Bajáos si no la versión de OpenOffice OS X para X-Windows o instaláos Ethereal mediante MacPorts o Fink.

Hasta hace una semana, la vida en el mundo Carbon transcurría ufana. La comunidad se preparaba para la WWDC y Leopard, el primer sistema operativo de 64 bits de Apple. Philip Lohmann, uno de los encargados de la versión OpenOffice para Mac, nos cuenta en su blog:


“From Monday, June 11th to Friday 15th some of the OOo Mac porter team visited the Apple World Wide Developer Conference to get input from Apple’s developers concerning our porting effort. We learned some rather important facts that will change the direction of our Mac port considerabley and Apple’s developers and UI specialists gave us very constructive criticism; of course there is a lot to do to look like a Mac application since we currently have a more old fashioned interface.”

en carbonita

Uno de estos “rather important facts” es que Apple sugiere no usar Carbon nunca jamás de los jamases, ya que las librerías de Carbon para Leopard 64 bits no van a ver nunca la luz. Sin embargo, Leopard sí contará con Carbon en su versión de 32 bits; pero no por mucho tiempo, ya que Carbon será eliminado del mapa en OS X 10.6. Y según leo en AppleWeblog, esta noticia ha sido confirmada por Apple.

Así que los desarrolladores Carbon tienen que pasarse a Cocoa antes de un año. Cocoa, a diferencia de Carbon, fue concebida por Apple como la manera estándar de desarrollar sobre OS X. Aunque tiene bindings con muchos otros lenguajes, Cocoa es Objective-C desde la médula. Así que el primer paso será para muchos usar la API de Carbon dentro de Cocoa. El segundo paso es aprender Objective-C, que con este golpe de efecto de Apple se convierte en el lenguaje de desarrollo de facto para OS X. Los más renuentes (o los que simplemente no tengan tiempo) continuarán usando Xlib o GTK+ para el GUI. Otra buena alternativa a tener que reescribir la aplicación en Cocoa/Obj-C es Java 6. Esperemos que Apple nos proporcione una buena implementación que le saque todo el jugo a la potencia gráfica del nuevo OS X. Esta noticia de JavaHispano se hace eco de ello.

En fin, esto es lo que tiene usar una API propietaria. Cocoa y Google Maps pueden ser todo lo cool y fáciles que quieras, pero al final tu aplicación queda en manos de las decisiones de mercado de una empresa (y que además no es la tuya).

Etiquetas: , , ,

For spam filtering purposes, please copy the number 8060 to the field below: