ForrestKnight / open-source-cs

Video discussing this curriculum:
https://youtu.be/NyOvFSP_IpQ
MIT License
18.69k stars 2.97k forks source link

Request for a C++ Edition #42

Closed jash-maester closed 3 years ago

jash-maester commented 4 years ago

Almost all colleges in India and some other countries focus on C/C++ as the primary programming language. I myself am a student of one of such Institute which focuses on C++ and C as the primary language of choice for beginners. Can anyone contribute or prepare similar list for C++. This will be really helpful for a huge number of students. Thank you all in advance.

HopeTS commented 4 years ago

I think this is meant for people who aren't going for college degrees. C++ is a terrible way to go if you're self taught; especially since most self-taught people are looking for jobs. Even a simple calculator in C/C++ requires a little bit more esoteric knowledge than in say Python. Then again; the same can be said about Java.

MarkusReynolds1989 commented 4 years ago

I'm not sure C or C++ are the best ways to learn Computer Science. For instance, if were to learn Scheme as your first language you might be able to write a compiler for it in a few months. Learning the tools to use Yacc and whatever else can take a long time. This is just an example, but I think that the faster you can develop and learn the concepts of CS. If you just want to learn manual memory management I agree, there should be some classes on that for C and C++. I think the Nand to Tetris series is supposed to help you to learn more low level systems type of programming.

Overall, if you understand those low level concepts mixed with high level programming picking up C and C++ won't be that much of a challenge, but if you try to learn C first you might get seriously demotivated because it's not an easy and fun language. C is simple but you have to make everything yourself and the compiler won't help you when you mess up. C++ is complicated but with the same caveats. I don't think either make for really good beginner material but that's just my humble opinion as a beginner myself.