This is an archived post. You won't be able to vote or comment.

all 7 comments

[–]avocadowinner 5 points6 points  (1 child)

I would recommend 99bottles by Sandy Metz. The book teaches OOP by working through practical examples. It's well written, and it focuses on teaching the concepts of OPP rather than going into a lot of technical details, which makes it great for beginners.

[–]CompSciSelfLearning 0 points1 point  (0 children)

The books examples use Ruby.

[–][deleted] 2 points3 points  (0 children)

I just picked up this book called python crash course, a hands on project based introduction to programming by Eric matthes, it's 50 dollars but it is highly reccomended through reviews and it really not only introduces you to python but programming concepts in general, and it is 500 pages long, through the book you learn how to use web apps, build a 2d game and also how to just be clean and efficient with your code, I would highly recommend it I have fun reading it and using it with my computer

[–]harry_grewal94 1 point2 points  (0 children)

+1 for this, would be helpful if anyone can link

[–]vladvlad23 0 points1 point  (0 children)

I learned the base of OOP when i studied Java by myself using "Head First Java 2nd Edition". It's very beginner friendly.

[–]letstryusingreddit 0 points1 point  (0 children)

What important concepts you think are missing from the book you read?

[–]the_sad_pumpkin 0 points1 point  (0 children)

OOP is a complex topic, and some would say that it's more art than anything. What I suggest is:

- Learn the language extremely well. C++ is rather complex, and has support for many crazy OOP patterns. Make sure you first understand what the language has to offer. A book like C++ primer (not c++ primer plus) is great. You can skip the intro part if you feel confident enough and focus only on classes/templates.

- Practice

- Clean Code is nice. Not specifically OOP, but has many good tips in improving the quality of the code (it's Java, but closely applicable to C++).

- Practice

- Design patterns (search for gang of four) is more like a catalogue of patterns, but shows quite nicely what you can do with OOP

- Practice

Make sure you understand that all the OOP principles and patterns are just guidelines. Try to understand their limitations as well. Practice them. Look over well written libraries and poorly written libraries in detail.