Re: EOF (was Re: Cocoa CGI)
Re: EOF (was Re: Cocoa CGI)
- Subject: Re: EOF (was Re: Cocoa CGI)
- From: Brian Hill <email@hidden>
- Date: Fri, 18 May 2001 13:33:54 -0500
On Friday, May 18, 2001, at 12:29 AM, mmalcolm crawford wrote:
I hope that these rather long posts might have given some folks out
there a flavour at least of what EOF is about, and why it is perhaps
rather unfortunately named. "Enterprise" objects may not sound as if
they have a great relevance to the Macintosh marketplace (at least not
yet ;-) , but I hope anyone should be able to see the benefits of a
Persistent Object Framework, and why some of us would so dearly like to
see it retained in Cocoa.
And I haven't even mentioned the EOInterface framework yet... if it's
not too cruel to ask, perhaps Brian might explain the loss he's feeling
at the moment?
mmalc.
Boy, where to start.
I'm the 'computer guy' at a small/medium sized business. On MacOS 8/9, I
used a lot of different '4GL' database tools, FileMaker, 4thDimension,
HyperCard, Visual FoxPro, even looked at Omnis.
Invariably, I'd end up running into a wall that ALL 4GL tools lead to --
the famous, "While 4GL tools make easy tasks easier, they make difficult
task impossible." In other words, if what you wanted to do didn't fit
the 4GL designer's idea of how things should work, you were usually
stuck.
On the other hand, I'd also written several PowerPlant C++ Mac database
apps to connect to database servers (like ButlerSQL or PrimeBase), and
while I had complete freedom to implement things as I wished, I had to
do everything myself. Lots and lots of embedded, brittle SQL statements.
Changing or renaming a column in the database would require about the
same amount of advance planning as the WWII invasion of Normandy.
Then I came upon OSX Server 1.0.2 and EOF. For the first time, as a Mac
developer, I felt I had an advantage in writing the sort of database
applications that are so common in business, and so commonly done in
VisualBasic on the other side of the fence.
With EOF and Interface Builder, you can literally create a simple (and
even not-so-simple) database client application WITHOUT really writing
any code at all! Drop a database entity from EOModeler onto the nib,
layout the form widgets, text fields and buttons, control drag the
connections, click 'build' -- you're done.
I finally had the best of both worlds -- the speed of using a 4GL RAD
database tool, and the power and flexibility of writing it from scratch.
As an added advantage, and a huge one at that, if we wanted to switch
database server platforms, for the most part, I only had to open up the
EOModel, switch the EOAdaptor to the new server platform, and recompile.
We've switched backend database servers 3 times here as we've grown. I
haven't had to touch the code in my EOF/Cocoa apps any of these times
(only the EOModels).
Nothing else on the planet touches EOF/Cocoa for writing database client
apps -- nothing. Not Visual Basic, not PowerBuilder, not FoxPro. Not
even close.
Even better, since EOF abstracts the database 'model' from the GUI, I
could also use the same model objects and 'business logic' in a web
program. GUI clients for the data-entry intensive tasks, Web interfaces
for the rest of them, all from the same codebase.
Unfortunately, this option evaporated between last January and the
release of WO 4.5.1 for MacOS X last month. EOF/Cocoa is quite broken on
OSX, you can't create EOF interfaces in Interface Builder, and there
doesn't appear to be any sign (at the moment) of it getting fixed at
some point. It appears that it was meant to work (we were told it would
work), but it doesn't.
I'm not going to whine about this too much on this list, to keep from
angering the list-moms, but suffice it to say that the loss of EOF/Cocoa
GUI apps won't probably even be appreciated by most Mac developers until
they decide to start writing those little database client apps that all
businesses (large or small) seem to need. Even graphic design shops need
accounting and billing systems, right?
Not to mention what would have been possible if EOF had been included as
part of the OS, like on OSX Server 1.x. Think of a cross between
HyperCard/RealBasic/FileMaker all backed up with a 'plug and play'
database backend that could scale from text files to Oracle. Sound
useful?
Anyway, speaking as a former MacOS 8/9, now Mac OSX developer, I'd just
like all of the other MacOS 8/9 developers to be aware of what's being
lost with the disappearance of EOF/Cocoa. It was, quite simply, the
competitive advantage in writing small business software of any kind.
Brian
email@hidden
http://personalpages.tds.net/~brian_hill
___________________________________________________________
"Why? I came into this game for adventure - go anywhere, travel
light, get in, get out, wherever there's trouble, a man alone.
Now they've got the whole country sectioned off and you can't
move without a form. I'm the last of a breed."
-- Archibald "Harry" Tuttle, Rogue HVAC Repairman
___________________________________________________________