views:

84

answers:

3

Hi

In my company we want to make a desktop software, but we want to create the better experience in the most common platforms (Windows(XP/VISTA/7), Linux and MacOs (And iOS) and several smartphones (android, webOS, windows mobile)

We have studied 3 options 1.- .Net, 2.- Java, 3.- C++ with Qt

We discarded .Net because we don't like the .net support in mac and linux. So, we have 2 options, Java and Qt. Qt sounds very good, but I don't like c++. Java sounds good, but I have the idea (and maybe i'm wrong, you tell me), that java never has the "look and feel" of a real native application. In this moment, the better choices look to be Qt, but i would like the advice of people with more knowledge and experience than me.

Thanks in advance

+4  A: 

In my opininon and experience, Qt works fine on many platforms, although I have never tried Mac. Also, the Qt documentation is very well done,complete and easy to understand.

As for Java, I agree that it does not look perfectly native on platforms.

Hope this helps.

Live
+1  A: 

Eclipse is written in Java, and it has the look and feel of a native application. The reason is that it uses the SWT libraries. The SWT libraries use native widgets.

A: 

You could use some 'web' technology, either the browser or something like Adobe Air. There is no rule saying that a browser app has to run on the internet. HTML5 is going to provide advanced features that are only going to blur the lines between the web and the desktop.

This route has some advantages:

1) There are a bunch of libraries available for developing these applications, Sproutcore, ExtJS, etc. 2) You write javascript, html, css. 3) A lot of developers are familiar with these technologies, so you have a large pool of talent from which to draw. 4) Cross platform 5) Both desktops and mobile devices have browsers. So you won't have (as many) platform dependent versions of your software.

This idea might not be right for whatever you are trying to do, but you can consider it.

hvgotcodes