GNUstep

GNUstep

Infobox_Software
name = The GNUstep Project



caption = GNUstep screenshot showing various applications developed with the GNUstep libraries, including a Miller Column browser
developer = GNUstep Developers
latest_release_version = make 2.0.1, base 1.14.0, gui & back 0.12.0
latest_release_date = 2007-04-15 (make May 25 2007)
operating_system = Cross-platform
genre = Desktop environment
license = GNU General Public License
GNU Lesser General Public License
website = http://www.gnustep.org

GNUstep is a free software implementation of NeXT's OpenStep Objective-C libraries (called "frameworks"), widget toolkit, and application development tools not only for Unix-like operating systems, but also for Microsoft Windows. It is part of the GNU Project.

GNUstep features a cross-platform, object-oriented development environment based on and completely compatible with the OpenStep specification developed by NeXT (which has since been bought by Apple Inc.) and Sun Microsystems. Like Apple, GNUstep also has a Java interface to OpenStep, as well as Ruby [ [http://www.gnustep.org/experience/RIGS.html GNUstep Developer Tools - RIGS ] ] and Scheme [ [http://gnustep.it/marko/GScheme GScheme ] ] bindings. The GNUstep developers track some additions to Apple's Cocoa to remain compatible. The roots of the GNUstep application interface are the same as the roots of Cocoa: NeXT and OpenStep. GNUstep predates Cocoa.

History

GNUstep began when Paul Kunz and others at Stanford Linear Accelerator Center wanted to port HippoDraw from NEXTSTEP to another platform. Instead of rewriting HippoDraw from scratch and reusing only the application design, they decided to rewrite the NeXTSTEP object layer on which the application depended. This was the first version of "libobjcX". It enabled them to port HippoDraw to Unix systems running the X Window System without changing a single line of their application source. After the OpenStep specification was released to the public in 1994, they decided to write a new "objcX" which would adhere to the new APIs. The software would become known as "GNUstep".

Paradigms

GNUstep is modeled somewhat on OPENSTEP, NeXT's implementation of the OpenStep API, and thus inherits some design principles proposed in OPENSTEP as well as the Objective-C language.
* Model-view-controller paradigm
* Target-Action
* Drag and drop
* Delegation
* Message forwarding (through NSInvocation)

Applications

There are several applications built for/upon GNUstep. For example the e-mail client GNUMail, which can also run on Mac OS X. Or the application server GNUstepWeb.

Class capabilities

Foundation Kit

* strings
* collections (arrays, sets, dictionaries) and enumerators
* file management
* object archiving
* advanced date manipulation
* distributed objects and inter-process communication
* URL handling
* notifications (and distributed notifications)
* easy multi-threading
* timers
* locks
* exception handling

Application Kit

* user interface elements (table views, browsers, matrices, scroll views)
* graphics (WYSIWYG, postscript-like graphics, bezier paths, image handling with multiple representations, graphical contexts)
* color management (calibrated vs. device colors; CMYK, RGB, HSB, gray and named color representations; alpha transparency)
* text system features: rich text format, text attachments, layout manager, typesetter, rules, paragraph styles, font management, spelling
* document management
* printing features: print operations, print panel and page layout
* help manager
* pasteboard (aka clip board) services
* spell checker
* workspace bindings for applications
* drag and drop operations
* services sharing among applications

References

See also

* Étoilé - GNUstep-based desktop environment
* Gorm - Graphical Object Relationship Manager (also UI builder)
* GNUstep Renaissance - framework for XML description of portable GNUstep/Mac OS X user interfaces
* StepTalk - Scripting framework
* Miller Columns The method of file tree browsing the GWorkspace File Viewer uses.
* Window Maker - a window manager designed to emulate the NeXT GUI as part of the wider GNUstep project
* AfterStep - a fork of the FVWM manager with a look based on that of NeXTStep.

External links

* [http://www.GNUstep.org/ The GNUstep Project Homepage]
* [http://www.gnustep.it GNUstep Applications and Developer Tutorials]
* [http://www.nabble.com/GNUstep-f1880.html GNUstep Forum] - hosted by [http://www.nabble.com Nabble] , which archives GNUstep mailing lists into a searchable forum.
* [http://gap.nongnu.org/ The GNUstep Application Project]
* [http://io.debian.net/~tar/gnustep/ GNUSTEP live CD] - a Linux distribution/live CD focused on implementing the GNUstep framework and applications.
* [http://emacs-app.sourceforge.net/ Emacs.app - an emacs port for GNUstep and Mac OS X.]
* [http://www.network-theory.co.uk/articles/pero.html A 2003 interview with GNUstep developer Nicola Pero]
* [http://www.illumenos.com/os/mgstep/ A parallel implementation, aimed instead at providing a framework for small-device programming]
* [http://twit.tv/floss44 FLOSS Weekly Interview with Gregory Casamento and Riccardo Mottola from GNUstep]


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • GNUstep — Einige GNUstep Anwendungen im klassischen NeXTStep Aussehen …   Deutsch Wikipedia

  • GNUstep — GNUstep, GORM corriendo en Window Maker …   Wikipedia Español

  • GNUstep — Un bureau sous GNUstep …   Wikipédia en Français

  • GNUStep — Un bureau sous GNUstep …   Wikipédia en Français

  • GNUstep — es un proyecto que pretende crear una implementación libre de la especificación OpenStep, creada por NeXT, que después fue comprada por Apple. Con el surgimiento del sistema operativo Mac OS X de Apple, basado en OpenStep, GNUstep también planea… …   Enciclopedia Universal

  • GNUstep — Эта статья слишком короткая. Пожалуйста, дополните её ещё хотя бы неск …   Википедия

  • GNUStep LiveCD — Desarrollador Gürkan Sengün[1] [2] livecd.gnustep.org …   Wikipedia Español

  • GNUstep Renaissance — is a development framework that reads XML descriptions of graphical user interfaces from an application bundle and converts them into native widgets and connections at runtime under either GNUstep or Mac OS X.GNUstep Renaissance was written by… …   Wikipedia

  • GNUstep Renaissance — Développeur Projet GNU Dernière version 0 …   Wikipédia en Français

  • GNUstep — ● np. m. ►INTGRAF implémentation libre (voir logiciel libre) de l interface NextStep. http://www.fortunecity.com/skyscraper/scsi/1031/ (quelques images pour vous mettre l eau à la bouche) …   Dictionnaire d'informatique francophone

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”