Re: Cocoa Java futures, NDA's etc
Re: Cocoa Java futures, NDA's etc
- Subject: Re: Cocoa Java futures, NDA's etc
- From: Brian Hannan <email@hidden>
- Date: Tue, 26 Oct 2004 20:41:04 -0700
On Oct 26, 2004, at 7:43 PM, Scott Stevenson wrote:
On Oct 26, 2004, at 6:52 PM, Brian Hannan wrote:
Considering KVO would require a Java equivalent of
triggerChangeNotificationsForDependentKey, which would mean messing
with method dispatch to Java objects
Which begs the question -- instead of hoping for Apple to retrofit
Java to work more like Objective-C, why not just use Objective-C?
I don't expect Apple to retrofit anything. Changing the Java object
model such that the VM can monitor for changes to properties and fire
off broadcasts I'm sure violates the Java security model, and all the
work involved with building it.
It's just more mounting evidence that Coca-Java didn't happen the way
it was planned. If I have it right, for a time -- before 10.0 -- Apple
toyed with replacing Objective-C with Java, and then settled on making
them both first class citizens in 10.0, fearing that developers
wouldn't want to learn an OS specific language. Years later it seems
developers don't mind learning Objective-C, and actually enjoy it.
Which I think places Cocoa-Java into essentially maintenance mode, and
leaves Apple free to stuff some interesting things into the Objective-C
runtime for building MVC apps, since that's what non-Carbon developers
are using.
All the more frustrating since Apple never comments about Cocoa-Java,
but creates Java stubs for NSController and the like (since I'm
guessing that is easy to do given they're probably just spit out by
some code generator). Which keeps both the Objective-C and Java App
Kit and Foundation more or less as peers, though Apple won't put WebKit
into Cocoa-Java. I guess they're stuck and don't want to deprecate
Cocoa-Java, keeping what's there superficially up-to-date.
And I'm asking from a purely pragmatic, non-political, non-rhetorical
standpoint.
I've built my entire back-end in Java primarily for portability reasons
-- it's a server as well. Therefore, I don't use Objective-C natively.
However, I've been a mac user since 1984. What I love about MacOS is
Apple puts the user experience first. I use IDEs and tools all day
built with Swing. While Apple has done a great deal with Java, the
user experience when using a Swing app is that you're using a Swing app
with Aqua buttons. It's like painting a dog bright orange -- it's still
a dog. And other UI kits like SWT aren't that much better, since there
are no sheets, drawers, MacOS X toolbars, etc, etc.
Having a Java backend and wanting to build a true MacOS X client UI
that won't confuse or frustrate MacOS users, I chose Cocoa-Java. But
if I want to use WebKit, and forthcoming PDFKit and enhanced SearchKit,
most likely they won't have Java-Cocoa stubs. And instead of going
some horrible JNI route, I'd prefer to suck it up now, and simply move
to Objective-C and create Objective-C stubs for my Java classes.
Which is why I've asked if anyone has heard any info from Apple
regarding Cocoa-Java and Tiger, given that if they were to add such
Cocoa-Java updates it would be big enough for a Tiger-like feature.
Cheers.
--
Brian Hannan
Chief Admiral of Uncle Jam's Navy
"One nation under a groove, gettin' down just for the FUNK of it."
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden