views:

87

answers:

2

My business partner needs a desktop application programmed, and it needs to be cross-platform as he wants Mac owners (OS X) to be able to run it as well. This, of course, is a bit of a problem for me as I program in PHP for my web projects and exclusively in C# (formerly used Visual Basic) for my desktop apps. I've been using (and love) NetBeans for my PHP stuff, and love Visual Studio just as much; they're both excellent IDEs.

With this in mind, I'd like to find a language and IDE that's as similar to Visual Studio as possible (or at least something that makes development as easy as it does) for my cross-platform application development. In fact, if there is a language I can use with VS I'd be extremely happy. I realize that NetBeans has a Java Desktop App IDE, but have been having problems with it (my question in regards to that issue is here. I am also not sure that I really want to learn and use Java if there is a better, easier option out there.

Obviously, the first language that came to mind that I can use cross-platform was Java, but I've also heard of people using Adobe Air, as well as Flex being used. I've never programmed in any of those languages, and as such have no frame of reference from which I can decide which would be best for me. I'm also not sure what other options there may be for me; perhaps there's another language I can use that'd be better than the three options I've already provided. (Can you make desktop apps with Silverlight? If so, did MS make an interpreter that will get them to work on OS X?)

I like the syntax of C# quite a bit, and the Visual Studio IDE makes it extremely easy to make my apps with. As such, I'd like to find something that'll work as well for me with the cross-platform shatner as C# and its IDE does with my Windows apps.

Thanks in advance for your help/opinions!

+1  A: 

I think Qt is the best thing out there currently. It is the basis of KDE, and looks pretty good on all platforms. It is write once compile anywhere. So you must build it specifically for each platform you want to support. That is what leads to the high quality results though. As far as I know you need to program in C++ to use it, but if that is not a problem I think its your best choice. It has a very full featured IDE of its own that I would say is at least in the same ballpark as Netbeans/VS.

Joe Cannatti
In Adobe AIR you know how it looks on EVERY platform. There is no difference and you don't need to build it for a specific platform as the AIR-Environment will do this for you, so you should at least have a look at it :)
hering
Yeah, I'll check it out. I just recently bought the Adobe CS5 Design Premium package. Is Flash Pro the tool I'd use?
Joe Cannatti
A: 

If tooling is you issue, there are a couple of plugins for VS for writing Flex code. http://www.sapphiresteel.com/Blog/Adobe-Flex-Plugin-For-Visual http://www.ensemble.com/products/tofino.shtml

as two immediate examples.

It does have to be said though, that unless you require specific desktop integration, you'd be better off writing a webapp as this is the best cross platform (but not cross browser ;) ) method.

Gregor Kiddie