OPENSTEP vrs. Cocoa

Hace varios meses hubo una discusión en la lista de GNUstep (la lista en inglés claro) acerca de si GNUstep debía ser presentado como un entorno que implementa las especificaciones OPENSTEP o como una versión libre de Cocoa (el entorno de desarrollo de Mac OS X). En su momento no le preste demasiada atención a esta discusión, ya que me pareció algo bizantina (como muchas de las discusiones en GNUstep). Tanto Cocoa como GNUstep nacieron de las especificaciones OPENSTEP, las cuales fueron creadas por NeXT y Sun Microsystems. Con la compra de NeXT por parte de Apple Computers, en 1996, el nuevo sistema de Mac se baso en la tecnología desarrollada por NeXT (con el nombre cambiado a Cocoa claro). Dicha tecnología a recibido mucha adiciones por parte de Apple, así como algunos cambios (por ejemplo, en lugar de usar el menú vertical se usa el menú horizontal en la parte superior). Sin embargo, decir que GNUstep es una versión libre de Cocoa, puede llevar a pensar que GNUstep pretende ser un clon de Cocoa, lo que me parece algo equivocado, ya que no se pretende pisarle los talones a Cocoa. Aunque es cierto que GNUstep a incorporado muchas adiciones hechas en Cocoa, también es cierto que muchas de esas adiciones no tienen ningún interés para el proyecto GNUstep. Además GNUstep también tiene una gran cantidad de adiciones que no existen en Cocoa. Por otro lado, según la opinión de algunos, decir que GNUstep implementa las especificaciones OPENSTEP no tiene sentido, ya que actualmente dichas especificaciones están muertas. Es decir, la gente ya no conoce dichas especificaciones. Pero si se les menciona Cocoa o Mac OS X, eso es ya una referencia que muchos conocen. Actualmente, en la página oficial, se puede leer “El objeto de este proyecto es crear una versión libre y abierta de  la API de Cocoa (Formalmente conocida como NeXTSTEP/OPENSTEP) y sus herramientas para tantas plataformas como sea posible”. No se si esto sea más claro o no, pero fue el consenso al que se llego después de tanta discusión. Personalmente, que no soy ingeniero en sistemas o algo parecido, no conocía ni a Mac OS X, o Cocoa o las especificaciones OPENSTEP cuando comencé con GNUstep. Comencé a usar este porque el lenguaje Objective-C  y los frameworks de GNUstep me parecieron mejores comparados con lo que había usado antes. Sin embargo, algunos apuntan que hacer referencia a Cocoa puede ser más atractivo para que los programadores usen GNUstep. Pero como muy bien apuntan otros, uno usa determinado entorno por su calidad, prestaciones y/o filosofía, y no porque se asemeja a un producto comercial. Esto se resume en una frase (no recuerdo quien la dijo) “Si te gusta Cocoa cómprate una Mac, y no te preocupes de GNUstep”. Lo cierto es que GNUstep es OPENSTEP, con muchas adiciones. Y que también pretende ser compatible con Cocoa (en cierto grado). Esto puede ser muy confuso para los que comienzan a utilizar GNUstep, pero dado que los dos nacieron de las mismas especificaciones creo que esto no se podía evitar. O al menos esa es mi opinión.

8 comentarios en “OPENSTEP vrs. Cocoa

  1. Olá German Arias, eu peço desculpas por escrever em brasileiro e não em castelhano,porém acredito que da mesma forma que consigo entender o que escreves deves entender a mim e minha lingua que é muito parecida com a tua.
    Penso que o que Gregori Casamento defende é que gnustep deve seguir as especificações do Cocoa para ter mais usuarios, já que a API da Apple tem muito mais usuarios que NEXT/Openstep ja teve, e por causa de as pessoas pensarem que gnustep ficou restrito a especificação original openstep, não tem muita utilidade para se utilizado no port de apps do sistema OSX para linux e windows e por este motivo procuram soluçoes que são menos completas que gnustep como por exemplo o cocotron que está bem incompleto.Sendo assim penso que se gnustep quer ser reconhecido como a melhor ferramenta para portar aplicações de OSX para outras plataformas deve seguir o que a Apple faz.

    • Definitivamente la mayoria de usuarios de GNUstep provienen de Cocoa. Y por lo tanto lo principal para ellos es portar sus aplicaciones de Cocoa a GNUstep. Pero me gusta pensar que hay otros usuarios (como yo) que usan GNUstep como su entorno de desarrollo y no sólo como una solución para portar sus aplicaciones. Pero claro, es valido y bueno que GNUstep pretenda ser compatible con Cocoa.

  2. Queria saber por curiosidad, por que aqulloes que usan y gustan de cocoa para programar, ¿por que no crean un entorno de escritorio para gnustep en cocoa?, tengo entendido que gnustep se puedes programar para cuanlquier plataforma.

    • No entiendo muy bien tu pregunta. Pero en teoría, GNUstep puede correr en Mac OS X. Sin embargo hasta la fecha no se de alguien que este interesado en crear paquetes para Mac. Existen algunos paquetes muy viejos y no se que tal funcionen. Sin embargo, si alguien esta interesado en usar GNUstep como una solución para portar su app. Facilmente puede usar One Step to GNUstep y probar la portabilidad de su app. ¿O te refieres a crear un escritorio similar a Mac pero hecho con GNUstep?

    • De hecho existe un proyecto con la intención de crear un entorno de desarrollo basado en GNUstep pero usando el compilador Clang y Objective C 2.0 por defecto. Este esta inspirado en la apariencia de Mac OS pero con una visión que va más alla. Todavía no se a liberado ningúna versión pero los interesados pueden hecharle un ojo. El proyecto se llama Étoilé y su página es esta.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s