Mastering Object Oriented using C++ (Free Preview)

Programming, Problem Solving, Project Building and Design Skills. 7X other courses homework/practice + several projects.
Rating: 4.6 out of 5 (170 ratings)
4,846 students
English [Auto]
Object Oriented Programming
Object Oriented Design
Extensive and Novel set of homework
Projects to master project building and design skills


  • C++ programming


This is a FREE PREVIEW for my paid full course that you can find in the profile. Get a sense of my teaching style.

Welcome to one of the unique programming Bootcamp experiences you will ever get.

  • The course covers basic to advanced and modern C++ syntax.

  • The course helps you master the 4 most important skills for a programmer

    • Programming skills

    • Problem-solving skills: rarely covered by other courses

    • Project building skills: partially covered by other courses

    • Design skills: rarely covered by other courses

  • 7+ times practice & homework compare to other courses plus 6 projects:

  • Special Teaching style: iterative, easy, and short


  • Basic to advanced modern C++. Kindly browse the course content.

    • In progress: Adding a few modern syntax topics.

  • A huge set of Practice, Homework, and Projects

    • 2 styles of homework: Algorithmic (problem-solving) and applications

    • Several software design concerns are embedded in the homework.

    • So you are getting introduced to Software Engineering & Design Patterns

  • What is listed above is a lot to learn and master for a beginner

Building Skills: Practice, Homework, and Projects

  • One unique feature in this course is my education strategy:

    • Explain, Administrate & Challenge

  • Each video smoothly explains a simple concept(s)

  • Typically followed by easy to medium practice to administrate the concept

  • Then typically followed by an easy-medium-hard set of homework questions to challenge you

  • Extensive homework from easy to medium to hard to help to build the skills.

  • Most of the practice/homework questions are unique in this course

    • Programming questions are mainly from my competitive programming experience

    • OOP questions are mostly invented to achieve several goals:

      • Mastering the OOP concepts

      • Enforcing a lot of design heuristics & OOD

      • Preparing you for design principles and patterns

  • Small-to-large set of projects to build up project building and design skills

  • Solutions to all of them.

Special Teaching style

  • In this course, I teach several concepts in 2 rounds

    • Early in the course, only the mandatory concepts/syntax are explained

    • Then you practice a lot to master them!

    • Later at an appropriate time, you will learn the remaining details

  • Short and to the point

    • Literally, in a few minutes, I cover clearly what others take a lot of time to explain

By the end of the journey

  • Solid understanding of programming concepts and its C++ syntax

  • Mastering the target 4 skills

  • With the administered problem-solving skills

    • You can start competitive programming smoothly in Div2-A/B Codeforces

    • Smooth start in Data Structure course

    • Smooth start in Algorithms course

  • With the administered project-building and design skills

    • Smooth start in Software Engineering course

    • Later, smooth start in one of the technology tracks in frontend or backend

What are the common complaints from programming courses?

  • Limited topics coverage.

  • Outdated syntax.

  • Unnecessary long videos with repetitions.

  • Too much time to explain basic concepts.

  • A sudden jump in the level. I can't cope with the content.

  • Assumptions of previous knowledge to understand some of the concepts.

  • Building over concepts that were not mastered through practice or homework.

  • The same examples are used over and over.

  • Several consecutive lectures without practice or homework to master the concepts.

  • Awesome knowledge, almost zero skills.

  • Very little practice or homework.

  • Good homework in the first half and very weak in the remaining.

  • Many homework without solutions.

  • Only one project.

  • Small-size project.

  • Long but tedious project.

  • The project doesn't help enforce the concepts.

  • Project source code is not provided. I needed to compare and learn.

  • Moving to Datastructures or Algorithms course was not easy. Weak problem-solving skills.

  • After the course, I am still stuck and can't do even simple projects. Weak project-building skills.

  • The course taught OOP syntax and concepts nicely, but OOD skills are not built. Weak design-skills.

  • And more!

In this course, not only the content and skills are unique and added value, but also the whole experience to avoid as possible the above concerns and much more! Even if you attended a C++ course, my material will be an added value, especially its homework and projects.

Don't miss such a unique learning experience!

Who this course is for:

  • Learning OOP

Course content

3 sections14 lectures1h 14m total length
  • Who should take this course?


Educator, Software Engineer, Scientist, Competitive Coach
Dr. Mostafa Saad Ibrahim
  • 4.8 Instructor Rating
  • 1,985 Reviews
  • 45,525 Students
  • 6 Courses

The most critical difference between my courses and others is ... going beyond knowledge: With me, you get really skilled. The extensive amount of quizzes, practices, homework, and [real] projects ranging from easy to hard will reshape your skills.

I have been teaching, training, and coaching for many students in Computer science and competitive programming.

I had been competing in ICPC programming competitions 2005-2011 (ranked 3rd/2nd/2nd in regional ACMC ICPC and World Finalist in 2011). After that, I played roles such as contestant, coach, problem setter, judge, and chief judge.

In addition, I have a mix of experience in Software Engineering, AI/Computer Vision Research, and Algorithms Design. I am a Ph.D. holder from  Simon Fraser University in Canada.

For more about my background, visit my WEBSITE