S
Singulus
Hello all,
I've searched for similar threads, I've found some bit of useful info
here and there, but nevertheless I want to post my questions...So, how
can I (we, in fact the forum can benefit from the discussion, this is
the point here) become C++ gurus?
I have 5 years of working experience with C/C++, I know that this can
be very ambiguous thing, but anyway...I've come to the point where I
want to structure and organize my further learning in C/C++ in a new
way. So here is my plan (draft):
- Read and study the book "The C++ Standard Library: A Tutorial and
Reference" by Nicolai M. Josuttis. In this case I mean exercising any
function of every class of the C++ Standard Library, like some sort of
unit tests, in order to become proficient and knowledgeable what can
be done with the library, how, the common idioms, etc. This includes
the small (and some not so small) programs using the specific classes
and/or part of the library focused to increase understanding.
- After reading the fore-mentioned book I plan to begin to read the
book "Exceptional C++: 47 Engineering Puzzles, Programming Problems,
and Solutions" by Herb Sutter, trying to solve thoroughly all
questions and problems, let's say one per day or so, to keep up my
form and constantly improving. After that naturally comes the other
two book by Sutter, "More Exceptional C++" and "Exceptional C++ Style:
40 New Engineering Puzzles, Programming Problems, and Solutions".
- There are numerous books about C++ that comes to mind in order I
want to improve myself (after reading the fore-mentioned already
ones), but here I don't know the exact order of reading/exercising the
material in the books. These books are:
- "Large-Scale C++ Software Design" by John Lakos
- "C++ Common Knowledge: Essential Intermediate Programming" by
Stephen C. Dewhurst
- "C++ Gotchas: Avoiding Common Problems in Coding and Design" by
Stephen C. Dewhurst
- "Imperfect C++: Practical Solutions for Real-Life Programming" by
Matthew Wilson
- "C++ Templates: The Complete Guide" by David Vandevoorde
- "The C++ Programming Language" by Bjarne Stroustrup (I've read this
one, but not with the my current understanding of the things around
and about C++, so I think the re-read will be beneficial).
- "Effective STL: 50 Specific Ways to Improve Your Use of the
Standard Template Library" by Scott Meyers
- Re-read the "Effective C++" also by Scott Meyers
- "Modern C++ Design: Generic Programming and Design Patterns
Applied" by Andrei Alexandrescu
- "C++ Template Metaprogramming: Concepts, Tools, and Techniques from
Boost and Beyond" - David Abrahams and Aleksey Gurtovoy
- "Beyond the C++ Standard Library: An Introduction to Boost" by
Björn Karlsson
- "Inside the C++ Object Model" by Stanley B. Lippman
- "The Design and Evolution of C++" by Bjarne Stroustrup
This is vast amount of books, no doubt about that, and I'm thinking
whether is appropriate and/or possible to get and instill that
knowledge in myself. It's not impossible, I think I'm determined to do
that because I will feel better for myself, that's the most important
thing after all.
All suggestions for books, reordering the list of the books, practical
tips, and whatever concerning <Becoming C++ guru> "problem" are
appreciated.
I've searched for similar threads, I've found some bit of useful info
here and there, but nevertheless I want to post my questions...So, how
can I (we, in fact the forum can benefit from the discussion, this is
the point here) become C++ gurus?
I have 5 years of working experience with C/C++, I know that this can
be very ambiguous thing, but anyway...I've come to the point where I
want to structure and organize my further learning in C/C++ in a new
way. So here is my plan (draft):
- Read and study the book "The C++ Standard Library: A Tutorial and
Reference" by Nicolai M. Josuttis. In this case I mean exercising any
function of every class of the C++ Standard Library, like some sort of
unit tests, in order to become proficient and knowledgeable what can
be done with the library, how, the common idioms, etc. This includes
the small (and some not so small) programs using the specific classes
and/or part of the library focused to increase understanding.
- After reading the fore-mentioned book I plan to begin to read the
book "Exceptional C++: 47 Engineering Puzzles, Programming Problems,
and Solutions" by Herb Sutter, trying to solve thoroughly all
questions and problems, let's say one per day or so, to keep up my
form and constantly improving. After that naturally comes the other
two book by Sutter, "More Exceptional C++" and "Exceptional C++ Style:
40 New Engineering Puzzles, Programming Problems, and Solutions".
- There are numerous books about C++ that comes to mind in order I
want to improve myself (after reading the fore-mentioned already
ones), but here I don't know the exact order of reading/exercising the
material in the books. These books are:
- "Large-Scale C++ Software Design" by John Lakos
- "C++ Common Knowledge: Essential Intermediate Programming" by
Stephen C. Dewhurst
- "C++ Gotchas: Avoiding Common Problems in Coding and Design" by
Stephen C. Dewhurst
- "Imperfect C++: Practical Solutions for Real-Life Programming" by
Matthew Wilson
- "C++ Templates: The Complete Guide" by David Vandevoorde
- "The C++ Programming Language" by Bjarne Stroustrup (I've read this
one, but not with the my current understanding of the things around
and about C++, so I think the re-read will be beneficial).
- "Effective STL: 50 Specific Ways to Improve Your Use of the
Standard Template Library" by Scott Meyers
- Re-read the "Effective C++" also by Scott Meyers
- "Modern C++ Design: Generic Programming and Design Patterns
Applied" by Andrei Alexandrescu
- "C++ Template Metaprogramming: Concepts, Tools, and Techniques from
Boost and Beyond" - David Abrahams and Aleksey Gurtovoy
- "Beyond the C++ Standard Library: An Introduction to Boost" by
Björn Karlsson
- "Inside the C++ Object Model" by Stanley B. Lippman
- "The Design and Evolution of C++" by Bjarne Stroustrup
This is vast amount of books, no doubt about that, and I'm thinking
whether is appropriate and/or possible to get and instill that
knowledge in myself. It's not impossible, I think I'm determined to do
that because I will feel better for myself, that's the most important
thing after all.
All suggestions for books, reordering the list of the books, practical
tips, and whatever concerning <Becoming C++ guru> "problem" are
appreciated.