Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

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 seperate versions for seperate 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.

share|improve this question
    
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
add comment

2 Answers

up vote 8 down vote accepted

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.

share|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
add comment

Check out this post: http://stackoverflow.com/questions/5318371/how-to-write-applications-for-different-platforms-linux-mac-windows-and-mobile/5318502#5318502

The users answered the question suggested some good frameworks like MonoDroid & Qt

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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