GNUstep, un entorno de desarrollo multiplataforma y orientado a objetos
GNUstep es un conjunto de bibliotecas Objective-C versátiles basadas en la especificación original de OpenStep desarrollada por NeXT (ahora propiedad de Apple e incorporada en Mac OS X).
El entorno se caracteriza por proporcionar un marco de desarrollo de aplicaciones orientadas a objetos y un conjunto de herramientas para su uso en una amplia variedad de plataformas informáticas. Obtenga más información sobre el proyecto GNUstep, alternativas, etc.
Sobre GNUstep
GNUstep surge justo después de que dejara Apple, el difunto Steve Jobs, este fundó una nueva empresa, NeXT, con el objetivo de producir la computadora perfecta.
En 1989, se lanzó el sistema operativo para esta máquina, llamado NeXTStep. Aunque inicialmente solo está disponible en NeXT Cube, NeXTStep ha tenido una gran influencia.
El primer navegador web, WorldWideWeb (luego renombrado Nexus), fue desarrollado en esta máquina. (El autor, Tim Berners-Lee, afirmó que su navegador no habría sido posible sin el excelente entorno de desarrollo de NeXTStep). Otro software desarrollado en máquinas NeXT es Doom.
Unos años más tarde, en 1993, NeXT se asoció con Sun para producir la especificación OpenStep. Era una versión simplificada de las API NeXT, pensada para el desarrollo multiplataforma y este se dividió en dos componentes:
- Uno de ellos el Kit de herramientas que proporcionó bibliotecas de bajo nivel, como cadenas, matrices asociativas y E / S de archivos.
- Y otro fue en los kits de aplicación proporcionaron un kit de herramientas GUI y servicios asociados.
Sun admitió brevemente OpenStep en Solaris, mientras que NeXT lanzó una nueva versión de su sistema operativo, denominada confusamente OPENSTEP, que se ha puesto a disposición para varias arquitecturas, incluida x86, además de que NeXT también proporcionó una implementación de la especificación que funcionó en Windows.
En ese momento, el Proyecto GNU estaba muy interesado en el sistema NeXT. Muchos vieron OPENSTEP como el sistema operativo UNIX ideal. Durante un tiempo, se pretendía que el sistema operativo GNU fuera muy similar a NeXTStep.
Aquí vale destacar que el kernel GNU HURD se basó en los mismos fundamentos de Mach que NeXTStep, pero con un diseño más ambicioso. La capa de interfaz gráfica habría sido proporcionada por una implementación GNU de las API NeXT.
El proyecto GNUstep realmente ganó impulso después del lanzamiento de la especificación OpenStep en 1994, pero sufrió algunos problemas.
Uno de los principales problemas con GNUstep fue el hecho de que muy pocos desarrolladores habían estado expuestos a NeXTStep u OPENSTEP. Luego vino la adquisición de Apple por NeXT, que redujo el precio del hardware NeXT y popularizó el sistema operativo NeXTStep.
A medida que más y más desarrolladores se acostumbraron a la elegancia de la API de OpenStep a través de la implementación de Apple, conocida como Cocoa, se reavivó el interés en el proyecto. En la década de 2000, GNUstep implementó más o menos todas las especificaciones originales de OpenStep, así como varias extensiones de OS X.
El kernel de GNUstep proporciona una versión de código abierto de las API y herramientas de Cocoa que admite varias plataformas populares. GNUstep proporciona una implementación sólida de las bibliotecas AppKit y Foundation, así como herramientas de desarrollo, incluido el diseñador de interfaz avanzado Gorm (InterfaceBuilder) y el IDE de ProjectCenter (ProjectBuilder / Xcode).
GNUstep busca ser compatible con el código fuente de Cocoa, por lo que se puede utilizar para desarrollar y construir aplicaciones multiplataforma entre Macintosh (Cocoa), Unix (Solaris) y tipo Unix (GNU/Linux y GNU/Hurd, plataformas NetBSD, OpenBSD, FreeBSD) y Windows.
GNUstep no está escrito en C. El lenguaje de desarrollo principal de GNUstep es Objective-C, pero GNUstep no se limita a eso.
Las bibliotecas GNUstep están cubiertas por la GNU Lesser Public License (Biblioteca). Esto generalmente significa que puede usar estas bibliotecas en cualquier programa (incluso en programas que no son libres) sin afectar la licencia de su programa o cualquier otra biblioteca con la que GNUstep esté vinculado.
Si distribuye las bibliotecas GNUstep con su programa, debe hacer que las mejoras que haya realizado en las bibliotecas GNUstep estén disponibles gratuitamente. Las herramientas independientes de GNUstep están autorizadas bajo la GPL estándar.
Finalmente si te interesa conocer más al respecto, puedes consultar los detalles en el siguiente enlace