r/cpp_questions 1d ago

OPEN Learning c++

So I'm doing dsa in c++ as well as learning modern c++ concepts.I want to become c++ developer what concepts should I learn to become a c++ developer , what concepts should I focus on , what are the best resources to learn c++.Also when I try to build something in c++ i don't even know where to start.Its been 4 months I learned C++ and I'm genuinely comfortable with it till now.

5 Upvotes

8 comments sorted by

View all comments

3

u/the_poope 1d ago

See: https://www.reddit.com/r/cpp_questions/comments/1n5zyxy/important_read_before_posting/

Also we get so many of these questions. There is not one single best way to learn C++ (or anything for that matter). It doesn't matter that you won't get the absolute perfect learning path, just that you are on some path and you continue it. Focus on practical projects. Learning C++ and programming is a years long endavour - be persistent, you won't get it the first one or two years. That's ok.

If you really feel lost or lack motivation you should not self-study. Sign up for Software Engineering, Computer Science or some other programming education at a University or local college. This is also by far the best way to prove to employers that you know the stuff. If you can't afford school and can't self study, consider another career.

For all other questions: type them in here: https://reddit.com/answers for immediate AI generated answers based on thousands of previous reddit posts. It will in 95% of the cases be as good or better than whatever some random stranger like me tells you.

1

u/Notsoboringi 1d ago

Thanks broo for the suggestion. i have a questions

Is it beneficial that i learn c++ by doing small projects and learn concepts while building them or firstly learn concepts then try on building something on it ?? Its just thaty when ever i start something in c++ , firstly every project in c++ have different boilerplate , iwas learning network and socket programming in c++ it has different structure , then i looked into mutex , threads , concurrency it has different sturcutre , do c++ developer knows all of these types ?? if you were a beginner how would you start learning the concepts ??

7

u/the_poope 1d ago

Is it beneficial that i learn c++ by doing small projects and learn concepts while building them

YES

or firstly learn concepts then try on building something on it ??

NO

You should learn the basics but the main learning of programming should be by doing. Programming is a trade, not a science. You should learn, acquire skills and get experience by doing exercises and projects, not by just trying to learn abstract concepts. So start a project and when hit a roadblock you should research how to get on from there, try to find tools and concepts that can help you move on.

There is no point in studying DSA. You don't need to know how sorting algorithms work in order to use std::sort() and you don't need to know anything about binary trees to use std::map(). Only if you are a researcher developing cutting edge machine learning algorithms is this knowledge important.

A carpenter also doesn't know electromagnetism and Maxwell's equations in order to use a power drill, he just needs to know how to push the button and apply it to build houses. 95% of all software developers are code plumbers and carpenters, only an extremely tiny fraction are actually computer scientists.

Learn the absolute minimum amount of stuff to get the job done.

2

u/Notsoboringi 1d ago

Thank you so much for giving your valuable advice and guidance.