Re: Cocoa development using Java - Suggested references
Re: Cocoa development using Java - Suggested references
- Subject: Re: Cocoa development using Java - Suggested references
- From: Buzz Andersen <email@hidden>
- Date: Wed, 07 Aug 2002 18:00:16 -0600
My $.02 on the whole Java vs. Objective C thing:
I do Java programming for a living, in which capacity I have produced
everything from distributed, enterprise web applications to Swing-based GUI
apps. I like Java a great deal, and believe I have attained a very high
degree of expertise and fluency in the language, its APIs and its idioms
(I'm even certified!). So why, when I go home, do I choose not to do my
Cocoa programming in such familiar territory?
The main reason is that Java is not merely a language, but an entire
platform unto itself. It has its own collection classes, its own GUI
frameworks, its own serialization mechanisms, and so on--all of which are
very much optimized to the Java language's particular "idioms".
Similarly, one only has to browse through the AppKit and Foundation API
documentation to see that Cocoa is an expansive platform that in many ways
overlaps what Sun has built into the Java class libraries. The difference
is that the Cocoa libraries were designed for the specific "idioms" of
Objective C. NSArray, for example, has a method called
"sortedArrayUsingSelector" (which necessitated Apple's creation of a Java
"NSSelector" class to mimic the way Objective C does what Java programmers
know as "reflection"). The "normal" way of accomplishing this list sorting
in Java would be to create a custom class that implements the
"java.util.Comparator" interface. In many ways, Cocoa and Java are
fundamentally mismatched--like the Holy Roman Empire, a Cocoa-Java program
lives up to no aspect of its name fully.
As Java programmer who is now big into Cocoa, I can tell you this: once you
get past the whole memory management thing (and it's really not that bad
once you get in the mindset), Objective C will be the least of your worries.
What will *really* take you time is learning how to use the Cocoa frameworks
and getting them to do what you want--and you'll have to do that whether you
use Java or not.
--
Buzz Andersen
email: email@hidden
web:
http://www.scifihifi.com
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.