Welcome to College Confidential!

The leading college-bound community on the web

Sign Up For Free

Join for FREE, and start talking with other members, weighing in on community discussions, and more.

Also, by registering and logging in you'll see fewer ads and pesky welcome messages (like this one!)

As a CC member, you can:

  • Reply to threads, and start your own.
  • Post reviews of your campus visits.
  • Find hundreds of pages of informative articles.
  • Search from over 3 million scholarships.
We've just launched our new college search tool at http://www.collegeconfidential.com/schools. Use the following form to provide feedback as we continue to work toward a more robust solution to best meet your needs: https://www.surveymonkey.com/r/CCSearchSurvey

Computer Science

MathFunMathFun Registered User Posts: 109 Junior Member
Is it more useful to learn how to program in C/C++ or Java? What is the difference?
Post edited by MathFun on

Replies to: Computer Science

  • GandhijiGandhiji Registered User Posts: 713 Member
    I started with C++ which alot of people think is bad..(dont ask) Java is pretty much the standard lang being taught in schools so start with that first.

    I dont know much about Java so I cant tell you many differences. However I do know that Java has automated garbage collection while
    C++ doesnt.

    The two languages are very similar though. Once you learn one, the other will be really easy to learn.
  • sagar_indurkhyasagar_indurkhya Registered User Posts: 1,491 Senior Member
    There is a hidden catch to learning java before C++. If you learn Java, you will go along quicker, but:

    A) Your code won't be too fast, so don't be planning to write very computationally heavy programs.

    B) You need to pay very close attention to references, and their relationship to pointers.

    If you start with C++:

    A) Sharp learning curve, but most scientific programs are written in C/C++, and you will have very speed programs indeed.
    B) It is easy to develop bad programming habits, and become ignorant to the correct way of doing things. For example, developing your own list class rather than using the STL's implementation.

    Benefits of Java:

    A) Automated Garbage collection
    B) Huge API to work with
    C) Applets
    D) Not any complicated pointer stuff

    Benefits of C/C++
    A) Very fast code(depending on how you write it of course ;) )
    B) More support for science/math related projects.
    C) Used in many computationally expensive fields.
    D) Once you go through it properly, you will have a very deep and thorough understanding of how a computer works. You will also gain the ability to cut through other folk's BS on how stuff(programming related) works.
  • MathFunMathFun Registered User Posts: 109 Junior Member
    Would you consider computer science as a science, as a math, or as something different?

    Thank you sagar_indurkhya for your explanations.
  • River PhoenixRiver Phoenix Registered User Posts: 731 Member
    I suggest Java, or maybe C#, because they are designed for object oriented programming and have other features.
  • sagar_indurkhyasagar_indurkhya Registered User Posts: 1,491 Senior Member
    C++ also supports OOP, although not as purely as Java or C#.

    I would consider Computer Science to be a branch of mathematics.
  • goddess32585goddess32585 Registered User Posts: 301 Junior Member
    cs = math
    programming = engineering
  • GandhijiGandhiji Registered User Posts: 713 Member
    yup CS= MATH
    and uh... River Phoenix: I would disagree with starting off with C#. Its a bit old now comapared with other languages.

    Another one I forgot to mention earlier is Python. www.python.org Its very easy to learn and the language structure is very similar to C++. I strongly reccomend this also
  • River PhoenixRiver Phoenix Registered User Posts: 731 Member
    :P How is C# old? I think you're confuddled
  • GandhijiGandhiji Registered User Posts: 713 Member
    idk lol but def. not a good begineer language.
  • sagar_indurkhyasagar_indurkhya Registered User Posts: 1,491 Senior Member
    Gandhiji(you've gotta get another s/n, its really ackward calling you that), I've gotta side with River on this one. C# is a pretty new language, newer than Java, C/C++, VB, etc. It is also one of the best languages for a beginner to learn, as it allows you to easily mixandmash with C++ later on.
  • GandhijiGandhiji Registered User Posts: 713 Member
    sagar: :( sorry about my sn lol. well I heard from other people that C# wasnt a good beginner lagnuage and maybe im wrong but I found other languages like Python and Java simpler. Also most high schools dont teach C# so that was kinda my reason...
    MathFun: Learn any language you want lol.
  • River PhoenixRiver Phoenix Registered User Posts: 731 Member
    C# is C++ with all of the Java features added in, plus more features added in. So it has C++ syntax, and is more advanced than Java even is (uses a virtual machine too). It depends what kind of programming you want to learn. You want to do applications programming, I definitely recommend C#. If you want to learn algorithms or that sort of programming, try C++ or something like Perl. Or even MIT Scheme. I would stay away from Python, myself.
  • HriundeliHriundeli Registered User Posts: 719 Member
    I think you should start with C#
    Beside the fact that it's easier (relatiely) than java or C++, if you take AP comp sci, it would be easier to get 5 on the test, and then you would be able able to say that you know at least 2 languages: C# and java (which definately cant hurt you) :)
  • sagar_indurkhyasagar_indurkhya Registered User Posts: 1,491 Senior Member
    Don't learn languages to put it down on your resume. My dad has told me often, that people will put down every programming language(all the major ones) under experience, and just quickly read up on them the day before the interview.

    Also, programming should not be confused with software engineering.
  • tokenadulttokenadult Super Moderator Posts: 17,472 Super Moderator
    Try this link


    for a definition of what computer science is, and plenty of tips about what to study in what order.
This discussion has been closed.