Alternatives to Obj-C?

Discussion in 'Mac Programming' started by PoetCSW, Jan 7, 2010.

  1. PoetCSW macrumors newbie

    Oct 26, 2009
    I use Delphi on Windows and have been following the newsgroups from the Delphi developers (Embarcadero) promising a cross-platform Delphi in 2010. They already ship Prism, which uses Mono/Qt on the Mac and Linux, but you have to code on Windows.

    My question:

    Other than Java tools (NetBeans comes to mind) and REALbasic, is there another GUI development tool for the Mac? Is one needed?

    I've been experimenting with Free Pascal, with .nib support, but it would be nice if Xcode/IB supported other languages a bit better. It seems the UI tools are the main barrier to developing Mac-like apps in other languages.

    Sometimes, a desktop app is the best solution for something. Does that mean Obj-C is the only serious option on the Mac?

    Yes, I know -- I will try to set time aside for Obj-C this summer. But, it would be nice to have options.
  2. mslide macrumors 6502a

    Sep 17, 2007
    You don't need to learn objective C to create Mac applications. C++ combined with Qt is one alternative to making cross platform GUI apps that look and feel like native applications. That's what I almost always use when developing desktop applications, regardless of the platform it is intended to run on. There are lots of popular apps that were written with this combination (e.g. Google Earth).

    I do all my development using terminal/vi/etc but Qt has a nice IDE if that's more your thing. I've never tried it but I'm pretty sure you can also create XCode project files using Qt's 'qmake' program if you want to use XCode for your development.
  3. PoetCSW thread starter macrumors newbie

    Oct 26, 2009
    I will have to check on this. I hadn't thought about using Qt because there are some great controls within Interface Builder. I'll have to see what Qt offers, now.
  4. JoshDC macrumors regular

    Apr 8, 2009
    Despite good cross platform UI frameworks like Qt, I'd still recommend the Cocoa + Objective-C route for the user interface if you have the resources. I haven't seen an application made with Qt that creates the native feel of a Cocoa application that successfully (Google Earth certainly doesn't to me), and I don't think you can take advantage of some of the more 'cutting edge' features of Mac OS like Core Animation.

    Another huge benefit of using Cocoa + Obj-C is that they're Apple's preferred development tools, they'll get updated with OS updates, visual and behavioural changes (major and minor) should be automatic or easy to transition to, etc.

    That said, if you just want an interface that works pretty well on all platforms, Qt seems the way to go.
  5. Eraserhead macrumors G4


    Nov 3, 2005
    It isn't exactly that challenging to learn Objective C, especially as you're going to need to learn Cocoa anyway if you want to make native applications.
  6. mslide macrumors 6502a

    Sep 17, 2007
    I guess there is a price to pay for going with Qt but for me being able to write an app on a Mac and have it run on windows with virtually 0 porting effort, while being close to looking/feeling like a native app (in my opinion), makes it hard for me to justify spending the time to learn obj-C/cocoa. In fact, I don't use Qt very often to write apps that are targeted for Macs necessarily. Most of the time the apps I write are really only intended for Windows. I like Qt so much because I can develop and test those windows apps almost entirely on my Mac.
  7. robbieduncan Moderator emeritus


    Jul 24, 2002
    There used to be ASS (AppleScript Studio). This has been replaced with AppleScriptObjC. I'm about to write a post on it with a small app I've written that uses it. In a lot of ways I'd say it's actually worse than just using Objective C! But it makes life easy if you need to talk to another application or other applications using AppleScript...
  8. GorillaPaws macrumors 6502a


    Oct 26, 2003
    Richmond, VA
    I just wanted to reiterate this point. Objective-C really is easy to pick up if you already know C (especially so if you're familiar with OOP). I would think that an experienced programmer could pick it up in a day or so. As Eraserhead mentioned, the hard part is learning the ins and outs of the Cocoa frameworks.

Share This Page