5

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.

Ian
  • 5,452

1 Answers1

8

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.

Adam Lear
  • 32,069