Click to See Complete Forum and Search --> : Should I select C++ ?


satimis
April 18th, 2010, 09:53 PM
Hi folks,

C++ and Java are platform independent. It is for sure. Java is a resource hog. The learning curve of C++ is quite steep at start. What I'm going to use C++ is to build a platform independent software with sound and graphic integrated as well interactive.

I have separate data (.dat), sound (.wav) and graphics (.gif) files. I wonder whether I have to compile sound and graphic files on the software. I won't compile data file on software. It should be retained separately.

Would C++ be the right choice for me? Any other suggestion? TIA

B.R.
satimis

Chris_F
April 18th, 2010, 10:36 PM
Hi folks,

C++ and Java are platform independent. It is for sure. Java is a resource hog. The learning curve of C++ is quite steep at start. What I'm going to use C++ is to build a platform independent software with sound and graphic integrated as well interactive.

I have separate data (.dat), sound (.wav) and graphics (.gif) files. I wonder whether I have to compile sound and graphic files on the software. I won't compile data file on software. It should be retained separately.

Would C++ be the right choice for me? Any other suggestion? TIA

B.R.
satimis

C++ is NOT platform independent in the sense that Java is.

A Java program will run on any platform with Java installed... end of story.

In order to be "platform independent" in C++ you have to take special care when writing your program. You have to use 3rd party libraries that are available on your target platforms to give abstraction, and you have to compile separate binaries. For instance, to be a GUI C++ application that's "platform independent", you will need to use QT or GTK+ for the UI. Same goes for sound, graphics acceleration, networking, threading, etc.

Igor Vartanov
April 19th, 2010, 04:13 AM
Besides, "to build a platform independent software" sounds pretty challenging. That must be something really worth to put a labor in. And surely, to make a success it is a task for a whole team but not a single person contemplating on a learning curve. ;)

satimis
April 19th, 2010, 10:32 PM
For instance, to be a GUI C++ application that's "platform independent", you will need to use QT or GTK+ for the UI. Same goes for sound, graphics acceleration, networking, threading, etc.

Hi Chris,

Thanks for your advice.

I have QT here running on Debian. At present I don't need it. I only work on a text editor and g++ to start.

What is the difference between QT and GTK+?

Other advice noted and thanks

B.R.
satimis

satimis
April 19th, 2010, 10:34 PM
Besides, "to build a platform independent software" sounds pretty challenging. That must be something really worth to put a labor in. And surely, to make a success it is a task for a whole team but not a single person contemplating on a learning curve. ;)

Hi Igor,

Thanks for your advice. I won't create complicate software only small program for my church in respect of Bible study.

B.R.
satimis

Chris_F
April 19th, 2010, 11:14 PM
Hi Igor,

Thanks for your advice. I won't create complicate software only small program for my church in respect of Bible study.

B.R.
satimis

Well, to be honest, you probably are better off with Java. Assuming you are going to have to learn whichever language you pick from the ground up, and considering you need a GUI and aren't really writing performance critical software. Java will be easier to learn and faster to develop with. GUI applications will be easier to write and they will run on both windows and linux without modifications.

C++ and Java are two different tools, and sometimes you need a hammer which drives nails a lot better than a wrench.