Refactor C++ roadmap: Consolidate operator discussions and introduce control flow section
Roadmap URL
https://roadmap.sh/cpp
Suggestions
Hey everyone! I hope you're all doing well. Currently, I'm reviewing a C++ roadmap and I noticed something.
- Observation: In the basic operations section, there are topics such as arithmetic operators, logical operators, bitwise operators, and loops for/while. However, there is another section called functions that covers operators and lambdas.
- Concern: It seems like the operators mentioned in the functions section are the same as the ones discussed in the basic operations section.
- Suggestion: It would be better to discuss overloading operators in the functions section instead of duplicating the content.
- addition: Create a new section called control flow & statements to cover loops like for/while/do while and conditions like if/else/switch/go to.
- removals: Remove the duplicate content about operators from the functions section. Move the discussion about loops from the operator section to the appropriate control flow and statements section.
I think he got a point
Hey @dansholds! It's been about three weeks since I opened this issue, and I haven't received any feedback yet. I still believe it's crucial to fix this as soon as possible for people who are interested in learning C++. I hope we can refactor the roadmap soon. Thank you!
@whoismtrx All the roadmaps are currently going through migration to the new Editor, cpp roadmap is one of them, so this can be looked at/actioned when the time comes 👍
In the meantime @whoismtrx Can you edit your initial post to be more structured rather than a paragraph such as addition, removals etc in bullet point format so it's easier to parse and understand when it comes to implement.
Hey @dansholds, can you please take a look at the changes I made to my initial post and let me know your thoughts?
@whoismtrx all good
I join to the suggestions @whoismtrx. These corrections will improve the quality of the C++ roadmap and will make it more logical.
Since the topic of "functions" was touched upon in this discussion, I want also to make my suggestion about this.
-
Suggestion: It is worth moving the section "Static Polymorphism", which includes "Function Overloading", from "OOP" topic to the section "functions".
-
Why: Because these do not relate directly to classical OOP concepts (such as inheritance, encapsulation, and dynamic polymorphism). More broadly, C++ provides and supports several paradigms, including procedural programming, OOP, and metaprogramming, and elements of each of these paradigms can be used together. However, if static polymorphism is used in OOP classes, this does not make static polymorphism of function part of the OOP concept.
@dansholds
This has been fixed. Thank you for reporting.