PDA

View Full Version : Better language for me?



reidms
May 21st, 2007, 06:35 PM
Hi-

I want to learn either C++ or Java. I mainly want to program applications(with no or minimal GUI).
I have no hardcore programming experience- I have just dabbled in C and BASIC.

I also work with SPARC based computers and I hope to either get a job with Sun or IBM when I graduate from college.

Please tell me which do you think would be better- I know this is kind of "which color is best" question, but I will appreciate all responses.

Thankyou for your time

derby007
May 21st, 2007, 06:47 PM
I've dabbled in both languages, and I prefer JAVA, as its pretty straight foreward, and theres loads of help/examples online: I started from scratch & am now designing my own GUI's tht are talking to Databases, wow !!
Here are a few egs:
http://java.sun.com/docs/books/tutorial/ui/features/compWin.html
http://www.java.happycodings.com/Core_Java/
http://examples.oreilly.com/jswing2/code/
Happy hunting...

ankursethi
May 21st, 2007, 06:49 PM
Between C++ and Java, Java is definitely much much better.

May I venture as far as to suggest Python (http://www.python.org)?

reidms
May 21st, 2007, 06:56 PM
Thanks for the links and for your time guys- The posts are much appreciated!

pmasiar
May 21st, 2007, 07:52 PM
I also work with SPARC based computers and I hope to either get a job with Sun or IBM when I graduate from college.

Obviously Java - both companies prefer Java over C++, why would you even ask?

Java learned something from C++: that memory management is hard, so it added garbage collection. Which of course makes C++ better in real-time apps where you are ready to manage your memory.

angelmartinezn
May 21st, 2007, 10:48 PM
My personal opinion....

If you firts learn C++, then you'll found easy and great Java...
If you firts learn Java, you'll hate C++ forever...

This is not a general rule, but I mean that java is much easier and functional than C++, but C++ give you the power to manage memory (with some abstraction) and a great specific HW optimization/adaptation.

With Java you can 'create programs faster' than with C++, with C++ you can 'create faster programs' than with Java.

Java is portable (very portable), and C++... hahaha, a 'bit less' portable :D

both are similar and different, choose the one you feel better. Every language has it's own function, there are not a winner or a looser...

good luck

samjh
May 22nd, 2007, 01:30 AM
Obviously Java - both companies prefer Java over C++, why would you even ask? Not quite. Both Sun and IBM market Java almost exclusively. But there is a lot of in-house development using C and C++, with Sun spreading even between the two (C/C++), and IBM leaning mostly toward C++. Java tends to be used for application programming by the two companies.

There is a IBM security R&D lab in my city, and they have a permanent opening for software engineers with C++ and Java experience. I applied for a job there after graduating from uni, but lacked enough C++ knowledge.

I'd suggest to OP to learn Java first, and then get a JCP certification from Sun. After that, learn C++. This is because there is more demand for Java people than C++ people, so it's a good good language to stand on in the beginning.

reidms
May 22nd, 2007, 03:40 AM
Not quite. Both Sun and IBM market Java almost exclusively. But there is a lot of in-house development using C and C++, with Sun spreading even between the two (C/C++), and IBM leaning mostly toward C++. Java tends to be used for application programming by the two companies.

There is a IBM security R&D lab in my city, and they have a permanent opening for software engineers with C++ and Java experience. I applied for a job there after graduating from uni, but lacked enough C++ knowledge.

I'd suggest to OP to learn Java first, and then get a JCP certification from Sun. After that, learn C++. This is because there is more demand for Java people than C++ people, so it's a good good language to stand on in the beginning.

I agree- IBM does seem more C++'ish

Sounds like a good idea- because I would like to program for a side/summer job in college(those Ultra 45's are not going to get any cheaper ](*,))

Thanks for the great responses! I plan to preorder Sams Teach Yourself Java 6 in 21 Days, 5th Edition unless you gurus recommend another publisher or book-

And as always thanks for the responses- you guys help shape future my career lol =D>

pmasiar
May 22nd, 2007, 03:51 AM
Not quite. Both Sun and IBM market Java almost exclusively. But there is a lot of in-house development using C and C++,.

I agree. Java for apps, C++ for deeper system programming. Depends what OP prefers - my bias is towards apps all the time :-)

reidms
May 22nd, 2007, 04:02 AM
Well I really just want to learn Java to get it on my resume, to get certified in it, and to get part time job programming(I heard 50USD an hour for contracting an experienced Java programmer)

nanotube
May 22nd, 2007, 04:08 AM
i'd suggest python. :)
there's even a free book called "dive into python" shipped with the default install of ubuntu, so you can dive right in. :)
plus, a lot of the ubuntu-specific tools are written in python.

reidms
May 22nd, 2007, 05:25 AM
Do you think C++ beats Java in Game Development?

slavik
May 22nd, 2007, 05:41 AM
in game dev, there is no contest ... C++ beats Java. Java doesn't have OGL bindings :( (there is a project but not exactly 'stable')

samjh
May 22nd, 2007, 02:34 PM
Do you think C++ beats Java in Game Development?

For AAA titles, C++ is the king of the hill, and it won't change for many years yet.

For indie-style titles, and especially for indie developers targeting the widest possible market by going multi/cross-platform, Java is becoming increasingly popular. Check out www.jmonkeyengine.com which is being used by several indie developers for some very promising 3D titles (check the screenshots).

JOGL is a lower-level 3D API that is a Java wrapper for OpenGL, and is now stable enough for mainstream use. See https://jogl.dev.java.net/ for examples.

Can't forget to mention Tribal Trouble: http://tribaltrouble.com/ :)

But if AAA titles are your goal, your best bet is with C++, and you had better be really good at using it!

reidms
May 22nd, 2007, 11:49 PM
For AAA titles, C++ is the king of the hill, and it won't change for many years yet.

For indie-style titles, and especially for indie developers targeting the widest possible market by going multi/cross-platform, Java is becoming increasingly popular. Check out www.jmonkeyengine.com which is being used by several indie developers for some very promising 3D titles (check the screenshots).

JOGL is a lower-level 3D API that is a Java wrapper for OpenGL, and is now stable enough for mainstream use. See https://jogl.dev.java.net/ for examples.

Can't forget to mention Tribal Trouble: http://tribaltrouble.com/ :)

But if AAA titles are your goal, your best bet is with C++, and you had better be really good at using it!

I really just wanted to see how Java was at gaming- but as I have learned by the previous posts- it is not that geared towards gaming-

I am still sticking with Java though because I do not plan to program games(other than just doing a small one for experience)

I like the fact that Java has a main certification also.

I have looked at some Java source code- and I really like how it is formatted

Is there any way to help develop for Ubuntu knowing Java?

xtacocorex
May 23rd, 2007, 01:20 AM
Is there any way to help develop for Ubuntu knowing Java?
Doubtful, most of the code is C (for Gnome) or Python. The fact that Java needs a virtual machine to run causes problems which is why I'll never mess with the language outside of the day and a half I learned it to do some string parsing for a Java based database system.

Mirrorball
May 23rd, 2007, 03:34 AM
Learn both! It's definitely not hard.

reidms
May 23rd, 2007, 09:36 PM
Learn both! It's definitely not hard.

Ill probably end up doing that- or doing a Java and C combo

kknd
May 25th, 2007, 03:48 PM
Learn both Java and C++.

Do what you can in Java. When you find that you need more direct acess to hardware / S.O, make it in C/C++ and use it with JNI =).

tac-tics
May 25th, 2007, 11:31 PM
All programmers know more than one language.

A smart programmer knows each of those language's strengths and weaknesses.

A blue-colar programmer knows Java.

A web programmer knows every acronym ever 3-letter acronym ever uttered (PHP, ASP, SQL, CSS) as well as JS, AJAX, and HTML.

A good programmer thinks, speaks, and dreams in Python.

An educated programmer should learn LISP (and then, never actually use it).

A master programmer programs in C and C++.

A hacker programs in C and assembly.

A hopeless nerd programs in BrainF*ck.