C++ programming for noobs

Discussion in 'Professional Trading' started by forsalenyc, Dec 30, 2008.

  1. has anyone learned C++ without taking lectures or classes? I want to learn C++ but wouldn't know where to start. can anyone refer a book, website/blog, or other sources for a beginner? I searched amazon, but there's million books there. I guess learning C++ is my new years resolution.
     
  2. Learning by examples, Just google C++ tutorial. You don't need text book for learning programming languages.

    On other note; I would suggest learning Java instead. There are tons of good examples at sun.com
     
  3. here's one that I found.

    http://msdn.microsoft.com/en-us/beginner/cc305129.aspx

    For me, trying to learn programming without being able to ask questions to a teacher and or moderator has made it near impossible for me to learn.Does anyone know of any online courses/webinars?
     
  4. Tums

    Tums

    if you want to do it for trading... EasyLanguage will get you further, faster, quicker.

    if you insist on something more "powerful" than EasyLanguage, I would do C#. It has more implementation in the retail trading platform than C++ or Java.

    if you want to be a pioneer... try Ruby.



    just my 2c.
     
  5. I'd take a cheap class at community college if you are new to programming in general.
     
  6. Euler

    Euler

    That brings up an interesting point -- one might consider what trading platform you're going to use BEFORE deciding what language to use. Once you learn any one of Java, C#, or C++ at a middling level, it's also easy to learn any of the others at a middling level, as they share a (somewhat) common ancestry. C++ is the hardest to learn from scratch, in my opinion, but if the platform you want to use definitely requires it, then you may be best off going with it. IB and a few other platforms use Java. Various other platforms allow you to use C#, but most of those also allow you to use Visual C++, which is an alternative but again a bit more difficult to learn; or Visual Basic, which I would avoid for projects of significant size/effort.

    I think a good 200-page introductory book is probably still better than what you'll find on the Web, especially for a beginner; or, as another poster suggested, a community college course would probably be great -- and who knows, if you find you like it, you'll be earning credit for a fallback career in programming. :cool:
     
  7. dcvtss

    dcvtss

    I don't know if C++ is really the language to learn on if you are a programming newbie. It has a lot of nit-picky and esoteric (comparatively) syntax that is pretty daunting for someone starting out. I think you would be better off starting in a procedural language and using it to pick up some basic programming concepts like variables, functions, arrays, pointers (maybe) etc and then probably moving to a language like Java to pick up the OOP concepts before tackling C++. It can get really low level when compared to some newer languages.

    When I learned programming, and I will be dating myself a bit here I started out with Pascal which was a great learning language and then moved to C and then to C++. Learning a good bit of the C/C++ syntax before adding the OOP on top was helpful.
     
  8. I think that's a very valid point. It really does help a lot to have access to a teacher/mentor/colleague who you can bounce questions off. Also as a source of advice for "good practice". Otherwise you find yourself stuck on some issue that may just be a trival question for a teacher but consumes a horrible amount of time if you have to chase it down yourself. Do that over and over again and it takes forever to get anything done.

    Having said that, there is a lot of available stuff on the net and it is vastly easier than it once was if you do it on your own. Also bear in mind that there is some basic elements of programming to be learned eg search techniques - what is a B-Tree, a hash table, a linked list, an array, how do they work and when would you choose one over ther others, etc etc. These days, it would be wise to learn some of the basics of concurrent programming, so that you can develop multithreaded code on multicore CPUs. These principles are not dependant on languague that you use.

    As aleady remarked - why C++ ? It's a lot harder than Java for example and even for experienced developers, the job is liable to get done sooner in Java than C++. Don't worry about speed issue - it's vastly overstated.
     
  9. Thanks, I have looked into taking a course at the local community college so then the question comes up of what language should I start with?
     
  10. So, easy language or java?
     
    #10     Dec 30, 2008