EQ
Jan 12, 2020
Honestly, this is a great crash course in OOP for C++ (though the ideas can be applied to any language). Previous experience with C++ is almost a necessity, the lessons can be complicated for novices.
WW
Jul 20, 2022
This course is indeed one of kind I would really recommand it to anyone seeking to improve their knowledge and hone their skills in the field of computer science more specifically in C++ programming.
By Jun A
•Jan 30, 2022
!
By ABDUL M
•Jan 20, 2022
h
By ZHANG T
•Jul 13, 2021
1
By Richard K
•May 24, 2023
This course does well in meeting its objective - to prepare people who are interested in applying for the online MS degree in Computer Science or Data Science at the University of Illinois. This course should not be taken by people who wish to get a stronger understanding of computer science fundamentals. There are better courses for that as this course is intentionally rushed to prepare students for the entrance exam. Most of the material in this course should be familiar to students that are taking this course or at least have a prior background in programming. If not, I would recommend checking out edX's "Computation Thinking Using Python" course or Coursera's "Fundamentals of Computing Specialization" by Rice University.
I really found the discussion on pointers, memory allocation, and the address operators to be very useful, especially compared to other explanations that I have seen. The programming IDE for the course is done on AWS, which makes set up easier for most people, but may be too complicated for those who typically use an IDE like VSCode and a build program like Make or Bazel. I used VSCode and Make for this course but did encounter some bugs in the Make scripts. Other than that, the course went very smoothly. I highly recommend this course for students who are interested in applying at U of Illinois that do not have a CS degree.
By Plover B
•Nov 1, 2019
I'm a relatively new programmer, and this was my first experience with any language other than Python.
I was able to complete all assignments with 100% scores on time or early, and yet I don't really feel that I have a solid grasp of the concepts taught. At no point did I go into an assignment and say, "oh yes, I know exactly how to do this." I completed the assignments all with a lot of trial and error, which is fine and normal for learning programming I think, but because the assignments were often to edit a smaller portion of a larger, more complicated program, it meant I it was difficult to really understand where things were going wrong. I mostly just had to try and try until I got it right. Some of the portions of the final project I actually felt fairly successful with, but others I struggled with in the same way.
So ultimately I feel that this is a decent course for a fairly experienced programmer to get acquainted with the differences of a language they're not expert in, but for someone new it may go mostly over their head unless that have more outside help. I plan to do more self study before continuing to the next course so that I feel more solid in my basic skills.
By Jeroen K
•Jan 2, 2020
It helped me to learn the fundamentals of c++. Very clear and to the point.
One thing that can be optimized in my opinion, is the way the IDE setup is taught. I worked from my own IDE and everything worked out fine, but I had never used make files before. I didn't know it was so simple from the terminal to run a make command with g++ installed. So I followed the whole tutorial to set up a AWS account and environment. Only to realize later that I just had to type: "make" and "make zip" in the terminal for my final assignment to work. Therefore I would suggest the following addition to make the course more smooth for people who are already familiar with their IDE, but not with make files:
- In the beginning briefly explain what a make file is and how to run make from cmd/terminal or in Linux.
This will be a help for people like me who already had some experience with an IDE but still find this course very useful.
By Nate K
•May 21, 2020
I am by no means a software guy but I do have a little bit of experience in python and I was able to get through this course. If you are somewhat familiar with basic object-oriented programming concepts you should be fine. If this is your first programming course I would recommend starting with a more simple language and one at a more basic level. Prof Wade goes through a ton of examples which is great. The only reason I am giving this course 4 stars instead of 5 is that I feel like there are still a lot of basic concepts that I don't completely understand (templates, namespaces, etc). Overall a great course and I look forward to taking the next course. Thanks Prof Wade!
By Aslan N
•Aug 2, 2020
Overall, the course was good for me ( with BS/MS in Mechanical Eng with a lot of experience in coding numerical methods ). The material covered by the course (pointers, objects, etc) is great - basically, everything I wanted to see in this type of course. Material is presented in a rushy manner (this might be justified for an accelerated program). Lastly, I feel like more programming assignments are needed to solidify our knowledge gained throughout the course (again, this might be justified for an accelerated program). Huge thanks, for providing the opportunity to learn CS fundamentals!!!
By YIfan W
•Aug 29, 2022
This course is great if it was a second introductory courses to C++. For someone who had no C++ experinece at all this could be quite tough. I wish we had slightly more complicated assignments regarding different constructors and destructors. There are some discrepency between the difficult of the class material and the relative ease of the assignments.
The provided course codes are very very good. It is worth taking a careful look at them to learn what good coding for C++ look like. Also, the first two weeks of class videos on memory management is very well explained.
By mohamed k
•Sep 10, 2020
The course is amazing in terms of content and tasks. I only have two comments one regarding the assignments submission system. I and a lot of people are very well familiar with visual studio as an IDE and it was so tiring to try to make it work with the assignments and the submission system, in addition to not having the ability to test the results without headache.
The other comment is the instructor sometimes goes so fast in some parts of the video lectures that need slower and deeper explaining.
Thanks a lot !
By Fabio M D F
•Feb 27, 2023
I like this course because it explains the topics with few words and never repeating itself and therefore proceeds at a relatively high speed. Here you don't waste time listening and reading the same things repeated over and over again (as other courses require). Maybe this isn't for everyone, but it sure is for quick learners. I wanted to give 5 stars but only gave 4 because this course should be updated to a newer C++ because it is still based on C++14 which is now 10 years old.
By Haadhim M A
•Apr 8, 2020
As far as the knowledge I gained through this course is concerned; it was much helpful for me in understanding the constructors part better. Also the assignments were pretty challenging that tested the usage of taught concepts.
I personally felt that students would be more comfortable if they have much more clear instructions given while solving the project part as it took lot of trials for me to make in the changes with the IDE I worked with as per the project requirement.
By Scott B
•Dec 25, 2023
I definitely upped my c++ theoretical knowledge in this course, but I would have preferred far more coding challenges as opposed to the multiple choice questions. While I can pseudocode my way through questions relating to the relevant topics with no problem, I feel like my ability to sit down and write a c++ program is still lacking. This is a great foundation to start gaining the knowledge to build my own ideas, though, and I'm looking forward to the rest of the sequence.
By Tuomo T
•Mar 10, 2021
The lecturer explains the concepts involved in this course really well. I was struggling to learn advanced C++ over ten years ago, because some of my foundations were not solid enough. It feels like this course gave me better foundations to now try climbing further, so thank you very much!
I'd give this course five stars, but I would like to see some improvement in the explanations of the calculations in the Week 4 final course assignment. Overall, a great course!
By Peter N
•Nov 18, 2022
Great course. Had some technical glitches here and there. I like C++ but also kind of wish this was in python. I do understand that learning a strongly typed language may be important particularly for aspiring software developers, but then, why not use Java, the de facto standard of the software industry? My background is in data science so it's great to explore things like pointers and memory allocation. But again, who uses C++ these days?
By carl w
•Mar 22, 2020
Pretty good class. Maybe I'd give it a 5 but I had difficulty with the final ImageTransform project. Has to be done in Linux (maybe theirs a way around it that I didn't find) and WSL (Microsoft Linux environment for a Windows box) does not support a GUI (least not straight away) and my old Linux box is very outdated I understand these issues were mine and not University of Illinois problems, but still creates hassle.
Good starter class.
By Jiawen C
•Apr 30, 2021
Good class and nice structured. Though I think it might be a bit too fast-paced for beginners (with little programming experience), many details are ignored and you should make yourself comfortable with such details by researching them a little bit. For my personal experience, I have learned some C/C++ years ago but programming extensively using Python/MATLAB everyday. So this class is very useful to help pick up the C++ language.
By French M
•Dec 24, 2019
It was good for me, I learned a lot, but the final project is just too complicated for me, and even with the Pdf, it's not clear at least for my level and I already took a OOP college course. I did it all but the final I am just stuck and that is frustrating. Despite the jumping in levels from video to video I did learn a lot so it is still a 4 star. Teaching is a bit fast.
By Abhay k
•Nov 10, 2020
This course was really helpful. It helped me to learn basic fundamentals of c++ as a beginner. I am very much impressed with the professor's way of making things clear but what I wanted as a beginner that the assignments should have been explained by the professor instead of reading PDF ourselves then those concepts would have been more crystal clear.
By Saugat B
•Apr 17, 2020
Wow, it was descriptive and at the same time needed quite an effort in searching various contents at google. Overall, it would be hard for novice but they can get along with little more effort. Really, the advanced mechanism for checking our submissions and not requiring peer reviews which is often slow and unreliable is praiseworthy.
By Zhonglu L
•May 12, 2024
It is not bad actually. But I would feel that the programming assignment can really be more challenging to include all the aspects mentioned in the course, e.g. template / constructor. Although the quizes are good challenges already, but the actual implementation of the knowledge may offer a better sense of achievement.
By Jon L
•Mar 26, 2020
Overall this course did a good job balancing sufficient levels of detail without losing the big picture with respect to OOP principles. The examples were good throughout. I thought the final image transform assignment was very interesting though not a particularly helpful indication of mastery of OOP principles.
By Diaa Y
•Jul 26, 2020
I believe the course videos and lectures are pretty good. The instructor explains pretty well and makes learning this course exciting. However I think that this course needs more projects, and to be more challenging. Possibly the instructors of this course rely on subsequent courses to cover more material.
By Paul B L
•Jun 5, 2020
the course helped me solve problems more strategically. The instructor also helped me make use of patterns as way to optimize code and see a problem in a more practical manner. This truly helped me enhance my skills in C++ and Data structures but also in fundamental problem solving skills.
By Kevin S
•Aug 3, 2023
Challenging and rewarding to complete. The course guides beginners like me on our first steps and finishes the course with enough of a challenge to give a sense of accomplishment. I must say after the course I felt insipired to jump into the next one in the series.