Announcement

Collapse
No announcement yet.

Learning C++ from a Linux point of view?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Learning C++ from a Linux point of view?

    For quite a while I've been looking at picking up programming again, purely as a hobby. I've been messing around (sometimes succesfully, sometimes not) with source code for things like kernel modules, applications, tools, etc for a couple of years and I want to be able to actually contribute to some projects and not only as debugger.
    Surely I could start doing that now, but most of my patches/changes are far to much of a hack job to publish

    So can anyone of you guru's point me to some good literature? Ideally I want 2 books:
    • one up to date, modern, linux point of view getting started book
    • one complete reference, for the 'why did they do it that way' situations


    I do have some minimal Java, JavaScript and Pascal (yeah, dos age) experience, but the emphasis is on minimal. I'd ideally like to know more about the core language, GUI programming is not as important (yet). I ask here, because it seems a lot of books over here seem to be a mix between a C++ guide and a Visual Studio manual.

  • #2
    Bjarne Stroustrup's "The C++ Programming Language" (3d edition) is pretty much everything you need to know all aspects of the language. This is not Linux specific, this is C++ specific

    Comment


    • #3
      Originally posted by RealNC View Post
      Bjarne Stroustrup's "The C++ Programming Language" (3d edition) is pretty much everything you need to know all aspects of the language. This is not Linux specific, this is C++ specific
      I use this book as a paperweight, doorstop; it's perfectly suited for these tasks ;-). If you want to learn cpp, then I suggest you pick up
      "Accelerated c++" by Koenig/Moo, which is not only a _lot_ thinner and lighter, but also focuses more on practical aspects (Stroustrup's book is more like a c++ reference manual).

      Comment


      • #4
        Originally posted by mlau View Post
        I use this book as a paperweight, doorstop; it's perfectly suited for these tasks ;-). If you want to learn cpp, then I suggest you pick up
        "Accelerated c++" by Koenig/Moo, which is not only a _lot_ thinner and lighter, but also focuses more on practical aspects (Stroustrup's book is more like a c++ reference manual).
        You didn't read the OP:

        "I'd ideally like to know more about the core language [...] I ask here, because it seems a lot of books over here seem to be a mix between a C++ guide and a Visual Studio manual."

        From his words it sounds like he would prefer a reference manual. And the book I mentioned excels at it. He already knows the language a bit so I don't think he needs an introductory book.

        Comment


        • #5
          Thank you both!

          I was going to order "The C++ Programming Language" for at least it's value as a reference manual, but then I just came across his newest book, which might suit me even better:

          An Introduction to Programming by the Inventor of C++ Preparation for Programming in the Real World The book assumes that you aim eventually to write non-trivial programs, whether for work in software development or in some other technical field.


          It seems it is just out a couple of days in the US and available in about a month over here (the Netherlands).

          "Accelerated C++" looks like a good choice too, it is even in the bundle that is published under Bjarne Stroustrup's name.

          Comment


          • #6
            Hmm, I didn't know he published that!

            I just ordered

            I still think TC++PL is a nice companion. It's the book I consulted the most through the years. It became a bit dusty though after I got a DSL connection and had constant access to http://www.cplusplus.com :P
            Last edited by RealNC; 20 December 2008, 02:03 AM.

            Comment


            • #7
              Hi all, thats a very nice information you have shared here. Thanks for sharing.

              Comment


              • #8
                Read the CodingStyle and ManagementStyle docs from a kernel release.
                They actually make pretty good reading

                Comment


                • #9
                  Lipmann's C++ primer

                  I see you live in Groningen, nice city I live there to.

                  Pascal experience?, was this turbo pascal or delphi or just pascal? If it was one of the first two, the above books will indeed serve as paperpresses. If not then It might be interesting to have a few chapters about object oriented programming, datastructers and algorithms. But then again, a separate book about these subjects would be far better.

                  Programming linux apps isn't that much different from windows or other OS's. Just take any good C++ book to get started. For Example Lipmann's C++ primer (a LOT of programmers started with this one). Its for sale for less than 10 euro from the Slegte (look for the latest 2005 version).

                  In general: better not start with a reference manual or worse a visual oriented programming book, both have a high level of bullshit info and consume to much of your time. There is a reason no school ever uses either of these two types.

                  Hope this helps.


                  Originally posted by curaga View Post
                  Read the CodingStyle and ManagementStyle docs from a kernel release.
                  They actually make pretty good reading
                  Excellent reading indeed, but irrelevant when learning a new language.
                  Last edited by tmpdir; 23 January 2009, 04:19 AM.

                  Comment


                  • #10
                    Go to CPlusPlus.com and see the manual.
                    I think its the best available resource.
                    After that, start learning console libraries like allegro and ncurses.
                    Then install GMP.
                    After that, start solving Project Euler Problems.

                    You would suddenly find yourself completely at ease with C++.

                    I skipped allegro and ncurses, but I am learning them now.


                    PS: Geany is a great IDE.

                    Comment

                    Working...
                    X