Hacker News new | past | comments | ask | show | jobs | submit login

  Objective-C saves you from making the choice between the high
  performance C++ or the programmer-friendly Java by adding a
  substantial runtime to a language that compiles to native code.
I have seen so many great Mac apps that were unusable in the end because of constant crashes. I doubt this would be the case if developers had picked some higher level language.

I know that ARC was recently added to Obj-C, but you can still accidentally harm yourself even with such simple tasks as adding items to array. If you need to deliver your app fast then sluggish (Java) is better than not working at all.




On the other hand, I've seen so many great ideas for Mac apps coded in Java with terrible GUI's and performance.


Cyberduck seems to be pretty good for a Java app.


Actually, I was just wondering today how Cyberduck managed to be so sluggish on my computer.

They've certainly gotten the look and feel right, because I didn't realize it was a Java application, but it is pretty sluggish, at least on my machine.


If someones trying to add items to an immutable array, they ought to know better.


>If you need to deliver your app fast then sluggish (Java) is better than not working at all.

I don't think this is how it works, at least in the OS X market. I never seen any but 2-3 Java apps become popular, and none that much. All the popular, successful apps are native.

So, you can maybe deliver faster with Java (doubt it, since you'll have to implement all the Cocoa goodies and cool integration APIs by yourself) but it wont get you that far.


Apple has since dropped Java, but back in the day, it was one of the primary supported development environments for Mac OS X. There was a full Cocoa bridge, and you could write native-looking applications in Java.

At least one of the built-in apps on early versions of Mac OS X (10.0/10.1?) was actually Java/Cocoa -- I want to say TextEdit, but I'm not certain. Soon after, of course, everything got ported to Objective-C.


>Apple has since dropped Java, but back in the day, it was one of the primary supported development environments for Mac OS X. There was a full Cocoa bridge, and you could write native-looking applications in Java.

Only up until Tiger. And you still had the "uncanny value" effect, despite the native-ish look and feel to Swing.

Plus, even SUN and then Oracle abandoned Java on the desktop.


>I have seen so many great Mac apps that were unusable in the end because of constant crashes. I doubt this would be the case if developers had picked some higher level language.

Yes, then they would have been unusable because of slow performance and regular gc pauses, like almost any Java program I ever met.

It's a lot faster now that it used to be around 2002+ with the Swing of the day, but still lags perceptibly behind C/C++ for UI work. And don't even think using it for a multimedia app (video/sound) etc, or a game, except if you delegate all the work to a hardware accelerated C/C++ 3D backend.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: