Should I learn C++ or C#?...

Discussion in 'OT Technology' started by Prototype, Dec 31, 2009.

  1. Prototype

    Prototype New Member

    Joined:
    Dec 12, 2009
    Messages:
    124
    Likes Received:
    0
    Location:
    Pennsylvania
    I have some bg experience with programming (I took VB and Java in HS), but I want to learn a new more powerful language. So I decided Cpp or C#. I did start with Cpp, but I'm worried it will get outdated soon. So which should I learn?
     
  2. Coottie

    Coottie BOOMER......SOONER OT Supporter

    Joined:
    Jun 6, 2006
    Messages:
    32,407
    Likes Received:
    0
    Location:
    OKC
    C++ isn't going anywhere. Learn which ever one is a better fit for your goals.
     
  3. CodeX

    CodeX Guest

    Assembly. It will make you a better programmer regardless of which high level language you eventually use to understand how that high level code translates into processor instructions.

    You have to understand that whatever language you choose you are ultimately creating machine code, represented by assembly language instructions for your specific target platform. When you write in C or Java or VB and hit "compile" the compiler takes your high level, almost pseudo, code and turns it into assembly instructions. Understanding your target platforms (in most cases intel x86) instruction set and how those instructions work and how your compiler turns your high level code into those instructions WILL make you a better programmer.
     
  4. CompiledMonkey

    CompiledMonkey New Member

    Joined:
    Oct 26, 2001
    Messages:
    8,528
    Likes Received:
    0
    Location:
    Richmond, VA
    Depends on what your goals are and where you are in your career. If you want to work in 80% of development jobs, traditional business environments, C# will serve you better. If you're more interested in things that require low level access, C++ is your better option. If you're in school, working towards school, and want a CS degree, C++ is your better option. Truly, it depends on a few factors.
     
  5. ge0

    ge0 New Member

    Joined:
    Oct 31, 2005
    Messages:
    8,398
    Likes Received:
    0
    Location:
    JERSEY
    c++ then learn JAVA
     
  6. Prototype

    Prototype New Member

    Joined:
    Dec 12, 2009
    Messages:
    124
    Likes Received:
    0
    Location:
    Pennsylvania
    So whats the "best" C# compiler? Also where can I get JBuilder for Java.

    I figured I miles well stick with something I already learned and get deeper into it while learning a new language.
     
  7. CodeX

    CodeX Guest

    Use visual studio and nothing but for C and all derivatives
     
  8. The1Ash10

    The1Ash10 Active Member

    Joined:
    Oct 10, 2002
    Messages:
    13,672
    Likes Received:
    0
    Location:
    ATX
    dot
     
  9. Swerve

    Swerve OT Supporter

    Joined:
    Feb 20, 2005
    Messages:
    3,179
    Likes Received:
    3
    Try and use this argument in a production environment and you'll be looked upon as the team fucking idiot.
     
  10. CodeX

    CodeX Guest

    Luckily, for my argument, it was blatantly obvious that he is trying to LEARN something NEW... hence not in a "production environment"...
    I also didn't tell him to USE assembly to write large projects... only to learn it and understand it so that he understands the higher level code he will use on a much deeper level.
     
  11. Swerve

    Swerve OT Supporter

    Joined:
    Feb 20, 2005
    Messages:
    3,179
    Likes Received:
    3
    Well thanks for your pointless retort but he did say C++ or C# so any other language was a waste fuking time. Especially a stupid recommendation like fucking Assembly.

    I suggest you take Assembly out of your ever loving for it rectum and realise that recommending Assembly at every opportunity is fucking stupid.

    It pays shit money (according to you) and hasn't even been asked for.

    I agree it has it's uses, but when someonne asks whether they should go for C++ or C#, first I say congrats to them for choosing good language, and secondly stop pushing assembly.

    It's all I have to say on the matter, but why you go on and on and on about assembly all the time I have no idea.

    You go make your program for every fucking platform, and i'll see you on the other side with a decent job, some bloody productivity and hell I might even enjoy learning it all, god forbid.

    EDIT - I enjoy your thoughts on things, the above is clearly just *my* opinion.
     
  12. CodeX

    CodeX Guest

    You completely missed the point. Even if you NEVER write a line of assembly language code in a commercial product LEARNING it will give you a better understanding of the HIGH LEVEL code that you will write, and it will make you a better programmer regardless what language you actually use.

    Do you understand that when you write C/C++/C#/Java/VB or anything else you ARE writing assembly? The compiler takes your high level code and directly turns it into assembly (well, machine code, but that is assembly without the labels).

    Do you understand what I am saying now? I never told him to ever write a line of assembly for any commercial product. I never told him not to use C++/C#/VB or any other high level language. I told him that in the process of learning assembly he will gain a better understanding of programming IN GENERAL regardless of what high level language he actually uses during his career.

    Honestly you sound like an idiot in the above post, you really seem to have completely missed the point or just do not understand that an understanding of processor architecture and it's instruction set (ie. assembly) will directly benefit you and make you a better programmer no matter which language you are going to be using.

    This is the single best piece of advice I can give someone as far as LEARNING goes (not production, LEARNING). Learning about processor architecture and the instruction set will benefit him far more than anything else regardless of what language he uses for production later on.
     
  13. CodeX

    CodeX Guest

    If you know nothing of the processors instruction set and nothing of the assembly code generated from your C++ code by the compiler I guarantee that I can take any code you have written in C++/C#/VB etc. and optimize it to make it either faster or have a smaller memory footprint. Compiler optimizations are good, but it only works on the higher level code you give it, with my knowledge of assembly and processor architecture I could take any (non-trivial) code you write and make it better. There is an advantage to having this knowledge I am suggesting to him... and to working in an environment that has extremely limited resources.
     
  14. samm

    samm Next in Line

    Joined:
    Dec 22, 2000
    Messages:
    2,630
    Likes Received:
    0
    Location:
    San Jose, CA
  15. Prototype

    Prototype New Member

    Joined:
    Dec 12, 2009
    Messages:
    124
    Likes Received:
    0
    Location:
    Pennsylvania
    Maybe I should just stick with the languages I already kno/familiar with then? :hsughno:
     
  16. vipergts24

    vipergts24 New Member

    Joined:
    Mar 10, 2005
    Messages:
    223
    Likes Received:
    0
    Location:
    Zomgland
    C++ is far from outdated. It is faster than C# because you don't pay for a garbage collector, etc. There is a reason that game companies who require intense computational speeds write everything in C++/C/ or assembly if they truly must. But regardless, C# is great too and probably has more real world applications for markets right now. The problem is, you don't learn important lessons like memory management if your programming language handles it for you so I would personally suggest C++ and then you can always learn C# no problem after or Java.
     
  17. Celtik

    Celtik New Member

    Joined:
    Jan 9, 2010
    Messages:
    11
    Likes Received:
    0
    If I had to choose then I guess I would say C#, however you should try to learn both if possible because they each have their pros/cons.
     

Share This Page