I'm a Microsoft developer mainly, but there are a couple of small-ish projects I'd like to fiddle with which would benefit from being cross platform.

The platforms I want to target are: Windows, Linux, Mac, Android and preferably iPhone, web (running in a browser).

I need 3D (Around the level of support seen in something like Minecraft (I'm not writing Minecraft)), some networking.

I'm pretty certain Java would work on all except iPhone. Looking at the "related questions" above it's offered up QT (no browser or phone AFAIK) and also HTML/CSS/JavaScript (3D? package for desktop?)

The other alternative is to have separate versions for separate platforms, developed with some common code where possible. That option isn't something I know anything about.

Does anyone have experience of this sort of conundrum? I figured here was better than SO, because I imagine there are compromises which extend beyond technical choice.

Finally, this is not a commercial operation, so some of the very expensive cross platform tools are out of the question unless they offer some sort of community edition.

  • You are mistaken about Qt not being available for phones. qt.nokia.com/products/qt-for-mobile-platforms and labs.qt.nokia.com/2011/02/28/necessitas – user16764 Mar 19 '11 at 18:54
  • If you are the only developer, I recommend you not to go for the cross platform approach. You will end up recreating the services provided by native platforms. Search for what dropbox did to make their app cross platform. They are successful, but it is clear it involves huge amount of work, requiring a large team. – rpattabi Mar 4 '15 at 12:43

How about C#?

It wouldn't be the cheapest approach due to some of the frameworks involved, but you could do C# on Windows, C# under Mono on Linux/Mac, C# on the Android through MonoDroid, C# on the iPhone through MonoTouch, and use one of the ASP.NET frameworks (MVC or webforms) for the web.

MonoTouch would be the most expensive part here. It sits at $400 for an individual license, although there is a student license available for $99. Mono itself is free and I believe MonoDroid is as well, although at the moment it requires VS2010 Pro or better on Windows.

| improve this answer | |
  • +1 Basically the only non-common code you'd have would be the view for each. It may not be the cheapest, but if you're charging for your apps/service then this would be the best investment in the long run. – Ryan Hayes Mar 19 '11 at 14:10
  • You know I didn't think this was viable, but it is actually starting to look like a possibility. I will dig into the above. Thanks :) – Ian Mar 19 '11 at 18:47

Not the answer you're looking for? Browse other questions tagged or ask your own question.