Today, the OpenStep API celebrates its 10th anniversary. What started out as a joint adventure of NeXT and SUN to define an application development standard that would run on all machines, making “write once compile everywhere” a reality, is still unfolding within the vivid and active community of GNUstep, old NeXT and Apple lovers.The magic 10 appears in GNUstep’s current 1.10.x release and in Apple’s MacOS X “Cocoa” release. Programmers worldwide can develop their programs on Mac OS, Linux, the BSDs, Solaris, and with a couple of hurdles — even on Windows. This solid and well-defined standard is reaching out to the world of software development, slowly but surely.
Program your applications in a couple of hours instead of days, weeks or never. Use the advanced API of a development framework that hasn’t needed significant modification for 10 years, because it rocks, is stable and just works.
You want to know more? Visit the links below:
GNUstep:
http://www.gnustep.org/
http://www.roard.com/gnustep/GNUstep-brochure.pdf
http://www.roard.com/gnustep/Booklet.pdf
http://www.roard.com/docs/lmf1.article/
OpenStep:
http://www.toodarkpark.org/computers/objc/
Apple:
http://developer.apple.com/documentation/Cocoa/
You could have a look at theses two GNUstep-based desktop efforts:
http://www.nongnu.org/backbone/
http://home.gna.org/garma/
I am trying GNUstep now, but it seems there’s some problem with GWorkspace.app…I’m using Debian Sarge, and installed GNUstep using official debian packages.
And when I use GWorkspace.app I find Edit->Cut/Copy/Paste menu is inactive. Is this some problem with debian package or simply just GWorkspace has not implemented that feature? I am curious now. Also, it seems the thumbnail module GWorkspace uses sometimes produce horribly broken and messed up thumbnail image. (esp. large images with lots of colors)
The OpenStep spec is here
http://www.gnustep.org/resources/OpenStepSpec/OpenStepSpec.html
And this is a LIVE CD of GNUstep
http://www.linuks.mine.nu/gnustep/
I’ve did just a little Cocoa – two three “sample” programs, most of my GDI programming went on wxWidgets (was wxWindows) on… Windows, mainly as I do not feel well writing with MFC or Win32 API.
But I thought Cocoa is really cool, especially with the Interface Builder. I’ve installed time ago GNUStep on Windows but there was neither Interface Builder, neither something like Cocoa. Did I miss something?
Can any one explain why we need GNUstep if we have GTK and QT?
Or is there a diffrence between the three?
<p>Well, in fact, GNUstep existed *before* KDE/GNOME … the only “problem” was that 1) to be useful it needed to be nearly-complete, and that took time, as there was few programmers .. because 2) it’s approach is different to other system and people prefer something that’s easy to grasp. and 3) it uses Objective-C, that many people doesn’t even had a look on it (sadly, because it’s really powerful and extremely easy to learn..).
<p>Now, well, you don’t *need* it — KDE/GNOME provides correct desktop, wxWindows provides correct cross-platform. But OpenStep is an extremely nice API, and GNUstep is an implementation of it, with some fantastic tool like Gorm (equivalent to InterfaceBuilder on OSX). Some people prefer coding on system they like 🙂
<p>The major differences between GNUstep/KDE/GNOME is that GNUstep is really object-oriented, it’s really easy to code an app with it, .. and it’s not as polished as KDE and GNOME 🙂
I’m not much of a OS coder, having only poked a little at the respective coding environments for various platforms, but I have to say, GNUstep is by far the easiest one I’ve toyed with.
The GUI editor Gorm, is easy to use and easy to create a useful GUI with.
From the short time I’ve played with gnome and KDE’s enviroment, I’d say you need much more time to fiddle with things to get them working. Haven’t managed to do that. GNUstep feels a lot more encouraging to write apps to.
“From the short time I’ve played with gnome and KDE’s enviroment,”
that should read “From the short time I’ve played with Gnome’s and KDE’s developer environments,”
GNUStep and Cocoa are really great development APIs. Someone said that it isn’t as polished as KDE or Gnome. That shows that they don’t know what they are talking about because GNUStep isn’t a dekstop environment like KDE or Gnome. Neither KDE nor Gnome are toolkits that you use to write applications. QT is. GTK is.
Frankly, it is important because it is superior.
I fiddled with Cocoa + ProjectBuilder/Xcode on Mac OS X and it really is pretty amazing how quickly you can get GUI apps together. Besides that, once you get used to the funky Objective-C syntax, it’s pretty much just a scaled down (simplified?) version of C++ with a pretty simple and effective memory management scheme (garbage collection, checked each time through the event loop IIRC).
I did feel a little uneasy though not really knowing exactly what my GUI code was doing (you drag and drop GUI elements and some sort of intermediate file is generated) — only knowing that it worked.
once you get used to the funky Objective-C syntax, it’s pretty much just a scaled down (simplified?) version of C++ with a pretty simple and effective memory management scheme
Well, it seemed that way to me anyway, for the short time I spent looking at it.
Frankly, ObjC is vastly different than C++, and much more than a “scaled down version of C++”. The major difference is that ObjC is dynamic and uses a runtime — thus you can for example add methods on the fly, change the class hierarchy on the fly, forward messages, send messages *not known* to the object, create messages on the fly and send them, you have nice introspection capacities, etc.
C++ is an do-everything language. ObjC is just OO on top of the C language, heavily inspired of Smalltalk. Basically, ObjC is Smalltalk in C, providing a good mix between the two.
Is there any hope to have sometime in the future a window manager for GNUstep which would sport a menubar a la Mac? I like to have contextual menus and even a menu with the available applications on the mouse click but I like more the menus in the application that I’m focussing to be in a manubar thing. I know, GNUstep developpers like more the NEXTstep appearance but may be it is time to offer an alternative to that.
For N. Roard: What is the status of the chameleon project? The package seems to be the same version for several years already?
Anyway Happy Birthday and fast coding to all involved in this project(s).
Well, you can use a gui bundle to have the menubar ala Mac, on top of the screen (WildMenu bundle..)
For Camaelon, I’m working (slooowly) on it. I expect to do a release in a near future.. but hm, I’m really bad with deadlines (and in general, finding free time to code..)
Here is a recent shot though: http://www.roard.com/screenshots/screenshot_theme34.png
I would like to add that OpenSTEP has even been scaled down to work handheld devices. The myPDA/mySTEP project works on bringing the APIs to the ARM/Linux based Sharp Zaurus. Some Screenshots can be seen at
http://www.dsitri.de/wiki.php?page=Screenshots