A GNUstep Testimonial
"Four months ago I knew nothing about Objective C and GNUstep. One day I cam across the announcement of a new GNUstep release and decided to go deeper into it.
The first thing that struck me as I was learning is that GNUstep as well as the Cocoa Framework from Apple are almost *exactly* identical to the NeXTstep APIs that was defined something like 10 years ago! And a decade is an eternity in the software industry. So I said to myself that if a Framework (and its programming language - Objective C) came through these 10 years untouched there must be something special about it. (As a matter of fact I completely overlooked the NeXTstep/OpenStep/Rhapsody saga in the 1990's."
Four months later here is what I have discovered
-
First of all, when you look at it, it is obvious that all the layers of the Framework (the Display engine, Foundation Library and Application Kit) were all (cleverly) designed a)from scratch and b)all at once and they fit perfectly one with another. The entire edifice is extremelly consistent.
-
The Framework is written in Objective C (still is on Mac OS X). It is a simple yet powerful OO language. It is much simpler than C++ and even though it is a compiled language it shares many of the features found in modern semi-compiled and interpreted OO language like Java, Ruby or Python. Just to give you an example Objective C has some remarkable introspection capabilities which makes it easy to bridge with Java or Ruby (as I did in RIGS)
-
Although I'm not familiar with this aspect, I suspect that the development tools coming with the Framework (Interface Builder and Project Builder) are very powerful tools and I'm not sure that any other tool on the market has reached this level of integration, ease of use and power since then. Gorm and ProjectCenter are GNUstep equivalent (work in progress).
-
Compared with GNOME, KDE, or MFC, the NextStep/GNUStep/Cocoa Framework is much, much simpler. I have been a GNU/Linux user for a decade (since the beginning actually) and I could never convince myself to invest enough time to master GNOME or KDE. Yet the NextStep/GNUStep/Cocoa Framework offers all the libraries and modern programming technics that a programmer would expect (included distributed objects!). The learning curve is also very smooth. Reading the 3 following documents is enough to understand and master 90% of the Framework:
-
Object-Oriented Programming and the Objective-C language (a must read!) ObjectiveC
-
Foundation Library - Objective C API Foundation Reference
-
Application Kit - Objective C API AppKit Reference
-
- All the Framework specifications are public and well documented (see above)
Bottom line: the NextStep/GNUStep/Cocoa Framework is about consistency, simplicity and a power.
Contribued by Laurent Julliard