By rick
via chaosinmotion.com
Published: May 30 2008 / 09:46
I still remember the brouhaha raised over Java on the Macintosh, and pronouncements by many of the Macintosh Technorati that Java sucks. (I believe Gruber’s words were Cross-platform crippity-crap Java apps.)
Comments
cbegin replied ago:
Agreed, Objective C sucks too.
bf44704 replied ago:
BS. Objective-C is miles ahead of Java. It's a damn shame that the original creators of Java, who explicitly credited Objective-C as an inspiration, didn't adopt more of the language's features, such as the more dynamic runtime features and the much more readable Smalltalk-like syntax. And creating UIs in COCOA using Interface Builder is still, after all these years, an order of magnitude easier and faster than doing the equivalent in Swing. Sad but true.
wp73875 replied ago:
Objective-C is definitely awesome, but that doesn't mean Java sucks. Java is excellent in many ways. However, when it comes to creating an application that looks and feels like it belongs on the platform (any platform), the current implementation of Java is not ideal.
As an aside, I think language wars are pretty silly (unless we're talking BASIC or C# which should be universally hated ::ducking::) :-) I have noticed, though, that a lot of the people who talk trash about Objective-C and Cocoa haven't ever actually implemented anything with them.
cbegin replied ago:
Cocoa != Objective-C.
You can code for Cocoa using Python too ( http://developer.apple.com/cocoa/pyobjc.html ). The Objective C language reads like crap. It looks like a bunch of stuff bolted onto C whereby the syntax was chosen solely to make it easy to parse and distinguish from the interlaced C code.
The lack of namespaces also creates a horrible naming convention that is not sustainable in the future. Two characters is not enough to distinguish frameworks, and it reads like crap too. I could go on, but there's little point.
Objective-C is and always will be the best choice for building OS X applications, because that's what Apple chose. But unfortunately, that's all Objective-C will ever be. As a language, it is simply not as universally relevant or applicable as Java or C# (and perhaps not even Ruby or Python). It's a niche language for a specific platform.
Clinton
Tantalus replied ago:
It doesn't matter if it's not better than Java. The reason mac developers sweat the details is because Mac users are picky and if you don't have a nice looking native aqua interface your chances of selling your app go way way down. That means Obj-C.
Voters For This Link (18)
Voters Against This Link (5)