We may earn an affiliate commission when you visit our partners.
Course image
Kevin Noelsaint, Anh Le, and Elise Deitrick

Code and run your first C++ program in minutes without installing anything!

Read more

Code and run your first C++ program in minutes without installing anything!

This course is designed for learners with limited coding experience, providing a solid foundation of not just C++, but core Computer Science topics that can be transferred to other languages. The modules in this course cover inheritance, encapsulation, polymorphism, and other object-related topics. Completion of the prior 3 courses in this specialization is recommended.

To allow for a truly hands-on, self-paced learning experience, this course is video-free. Assignments contain short explanations with images and runnable code examples with suggested edits to explore code examples further, building a deeper understanding by doing. You'll benefit from instant feedback from a variety of assessment items along the way, gently progressing from quick understanding checks (multiple choice, fill in the blank, and un-scrambling code blocks) to small, approachable coding exercises that take minutes instead of hours.

Enroll now

Two deals to help you save

We found two deals and offers that may be relevant to this course.
Save money when you learn. All coupon codes, vouchers, and discounts are applied automatically unless otherwise noted.

What's inside

Syllabus

Encapsulation
Welcome to Week 1 of the Object-Oriented C++: Inheritance and Encapsulation course. These assignments cover encapsulation, or the bundling of related functions and data related to an object within it's class. The module ends with a lab and graded coding exercises.
Read more
Inheritance
Welcome to Week 2 of the Object-Oriented C++: Inheritance and Encapsulation course. These assignments cover re-using code from one class in another class by creating an inheritance relationship between the classes. The module ends with a lab and graded coding exercises.
Polymorphism
Welcome to Week 3 of the Object-Oriented C++: Inheritance and Encapsulation course. These assignments cover adding flexibility to functions by overloading and overriding them. The module ends with a lab and graded coding exercises.
Advanced Topics
Welcome to Week of the Object-Oriented Python: Inheritance and Encapsulation course. These assignments cover other topics involving classes and objects such as structs and enums. The module ends with a lab and graded coding exercises.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Taught by Kevin Noelsaint, Elise Deitrick, and Anh Le, who have extensive experience in both academics and technology
Provides an in-depth understanding of not only C++ but also core Computer Science concepts
Offers self-paced learning with plenty of opportunities to practice coding, including multiple-choice questions, fill-in-the-blank exercises, and coding exercises
Covers encapsulation, inheritance, polymorphism, and other object-related topics, which are important concepts in object-oriented programming
Does not require students to install anything, making it accessible to learners with limited resources
Expects learners to have some prior coding experience and recommends completing earlier courses on C++

Save this course

Save Object-Oriented C++: Inheritance and Encapsulation to your list so you can find it easily later:
Save

Reviews summary

Well-received c++ course: inheritance and encapsulation

Learners say this Object-Oriented C++ course is well-received, with engaging assignments. It covers the basic concepts of inheritance and encapsulation, making it a great choice for beginners in Object-Oriented Programming. The course is well-prepared, easy to understand, and offers hands-on practice to reinforce the lessons. While some learners felt the course content could go deeper, the vast majority appreciated the clear explanations and balanced exercises.
Concepts are presented in a straightforward manner.
"Best introductory C++ specialization on Coursera (so far). These guys managed to make classes fully understandable, and for this they deserve my utmost respect."
"The course has many exercises which is the most impressing part for me. However the content is narrow and focused too much on inheritance and encapsulation, but not all about object oriented programming. "
Incorporates exercises for practical application.
"This is a very good course, where you'll get to learn the importance of encapsulation and inheritance very well, and you'll also get the basic understanding of, classes, structs, and many more. This is a perfect course who want to learn about the above mentioned topics, because it gives you hands-on experience with what you are learning"
Introduces basic C++ concepts.
"This is a very good course, where you'll get to learn the importance of encapsulation and inheritance very well, and you'll also get the basic understanding of, classes, structs, and many more."
Some exercises may have errors or unclear instructions.
"A great intro to C++ ... very clear instructions and balanced exercises .. The only drawback is there are some mistakes in some exercises that need to be reviewed .. other than that .. you'll enjoy and learn much from it."
Focuses primarily on inheritance and encapsulation.
"The course has many exercises which is the most impressing part for me. However the content is narrow and focused too much on inheritance and encapsulation, but not all about object oriented programming."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Object-Oriented C++: Inheritance and Encapsulation with these activities:
Practice Essential C++ Syntax
Refresh your C++ skills before starting the course to ensure a stronger foundation
Browse courses on C++
Show steps
  • Review basic C++ syntax and data structures
  • Practice writing simple C++ programs
Comprehend Object-Oriented Concepts
Review object-oriented concepts, strengthening your foundation for this course
Show steps
  • Revisit the principles of object-oriented programming
  • Explore different object-oriented design patterns
  • Apply your understanding by designing and implementing a simple object-oriented system
Attend C++ Workshop for Enhanced Skills
Enhance your C++ proficiency through a hands-on workshop experience
Show steps
  • Locate and register for relevant C++ workshop events
  • Attend the workshop and actively participate in exercises and discussions
  • Network with other participants and industry experts
Six other activities
Expand to see all activities and additional details
Show all nine activities
Practice Creating Encapsulation Methods
Review encapsulation by practicing creating encapsulation methods to solidify understanding
Browse courses on Encapsulation
Show steps
  • Review the definition of encapsulation
  • Examine examples of encapsulation in provided code
  • Create your own functions to encapsulate data and methods
  • Test your functions through runnable code examples
Explore C++ Inheritance in Tutorials
Solidify your inheritance understanding by engaging in guided tutorials
Browse courses on Inheritance
Show steps
  • Find and review tutorials on C++ inheritance
  • Follow along with examples provided in tutorials
  • Implement inheritance principles in your own code
C++ Project: Create a Simple Class Hierarchy
Apply your understanding to a hands-on project involving polymorphism
Browse courses on Polymorphism
Show steps
  • Design a simple class hierarchy with base and derived classes
  • Implement polymorphism through function overriding and method overloading
  • Test your project to demonstrate polymorphic behavior
Complete a Personal C++ Project
Apply your learning by embarking on a personal C++ project
Show steps
  • Identify a project idea that aligns with your interests and course objectives
  • Design and implement the project using C++ principles and techniques
  • Test and debug your project to ensure its functionality
  • Document your project, including project rationale, design decisions, and implementation details
Solve Advanced C++ Coding Exercises
Challenge your C++ skills and deepen your understanding
Browse courses on C++
Show steps
  • Find and attempt advanced C++ coding exercises
  • Implement solutions using advanced C++ concepts and techniques
  • Review your solutions and identify areas for improvement
Organize and Review Course Materials
Ensure success by organizing and thoroughly reviewing course materials
Show steps
  • Compile notes, assignments, quizzes, and exams
  • Review and reinforce your understanding of key concepts
  • Seek clarification on any topics that need further explanation

Career center

Learners who complete Object-Oriented C++: Inheritance and Encapsulation will develop knowledge and skills that may be useful to these careers:
Data Scientist
Data Scientists use scientific methods, processes, algorithms, and systems to extract knowledge and insights from data in various forms, both structured and unstructured. The Object-Oriented C++: Inheritance and Encapsulation course can provide Data Scientists with a strong foundation in object-oriented programming. This will enable them to work with complex data structures and algorithms more efficiently.
Software Engineer
Software Engineers apply engineering principles to the design, development, implementation, and management of software systems. The Object-Oriented C++: Inheritance and Encapsulation course will help Software Engineers to strengthen their understanding of object-oriented programming and learn how to apply these concepts in software development.
Game Developer
Game Developers design, develop, and maintain video games. The Object-Oriented C++: Inheritance and Encapsulation course can provide Game Developers with a strong foundation in object-oriented programming. This will enable them to work with complex game engines and create more immersive and engaging games.
Embedded Systems Engineer
Embedded Systems Engineers design and develop electronic systems that are embedded in larger mechanical or electrical systems. The Object-Oriented C++: Inheritance and Encapsulation course will provide Embedded Systems Engineers with a solid understanding of how to use object-oriented programming to create efficient and reliable embedded systems.
Software Tester
Software Testers are responsible for testing software to ensure that it meets the required standards of quality. The Object-Oriented C++: Inheritance and Encapsulation course will provide Software Testers with a better understanding of object-oriented programming principles. This will enable them to test code more effectively and identify potential defects.
Quality Assurance Analyst
Quality Assurance Analysts are responsible for ensuring that software products meet the required standards of quality. The Object-Oriented C++: Inheritance and Encapsulation course will provide Quality Assurance Analysts with a better understanding of object-oriented programming principles. This will enable them to test code more effectively and identify potential defects.
Computer Scientist
Computer Scientists leverage their expertise in computer theory and problem-solving to solve complex challenges. The Object-Oriented C++: Inheritance and Encapsulation course can serve as a useful resource for Computer Scientists. By learning the fundamentals of object-oriented programming, including encapsulation, inheritance, and polymorphism, Computer Scientists can expand their skillset and potentially develop innovative solutions to problems.
Applications Developer
Applications Developers use their coding skills to create and maintain computer programs, usually in a specific area of knowledge. By enrolling in the Object-Oriented C++: Inheritance and Encapsulation course, Applications Developers can enhance their knowledge of object-oriented programming principles. This will provide them with the skills to work with complex systems and write modular and flexible code.
Software Developer
Software Developers are responsible for the design, development, and maintenance of software applications. The Object-Oriented C++: Inheritance and Encapsulation course will provide learners with a solid foundation in C++, a popular programming language used by many Software Developers. Through the course, learners will gain a better understanding of object-oriented programming concepts, such as encapsulation, inheritance, and polymorphism.
Systems Analyst
Systems Analysts work with businesses to analyze their needs and design and implement systems to meet those needs. The Object-Oriented C++: Inheritance and Encapsulation course can provide Systems Analysts with a better understanding of how object-oriented programming can be used to develop efficient and effective systems.
Database Administrator
Database Administrators are responsible for the management and maintenance of databases. The Object-Oriented C++: Inheritance and Encapsulation course can help Database Administrators to gain a better understanding of how object-oriented programming can be used to design and implement database systems.
Web Developer
Web Developers are responsible for designing, developing, and maintaining websites. The Object-Oriented C++: Inheritance and Encapsulation course can be useful for Web Developers who want to gain a deeper understanding of object-oriented programming in C++. This knowledge will help them to build more robust and scalable web applications.
Network Administrator
Network Administrators are responsible for the management and maintenance of computer networks. The Object-Oriented C++: Inheritance and Encapsulation course can provide Network Administrators with a better understanding of how object-oriented programming can be used to design and implement network systems.
IT Project Manager
IT Project Managers oversee the planning, implementation, and execution of information technology projects. The Object-Oriented C++: Inheritance and Encapsulation course will provide IT Project Managers with a better understanding of the technical aspects of software development. This will enable them to make informed decisions and manage projects more effectively.
Computer Programmer
Computer Programmers design, develop, test, and maintain different types of applications and computer programs. Taking the Object-Oriented C++: Inheritance and Encapsulation course can be useful for people working as or aiming to work as Computer Programmers. The course will help learners to understand the fundamentals of object-oriented programming, including encapsulation, inheritance, and polymorphism.

Reading list

We've selected nine books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Object-Oriented C++: Inheritance and Encapsulation.
Comprehensive reference for C++ programming. It covers a wide range of topics, including object-oriented programming concepts. It valuable resource for those who want a deep understanding of the language.
Provides a comprehensive reference for the C++ standard library. It covers a variety of topics, including object-oriented programming concepts and best practices. It valuable resource for those who want to learn more about this important topic.
Provides a comprehensive overview of effective modern C++ programming techniques. It covers a variety of topics, including object-oriented programming concepts and best practices. It valuable resource for those who want to learn more about this important topic.
Fast-paced introduction to C++ that covers object-oriented programming concepts. It good choice for those who want a more in-depth understanding of the language.
Provides a comprehensive overview of C++ concurrency. It covers a variety of topics, including object-oriented programming techniques for concurrent programming. It valuable resource for those who want to learn more about this important topic.
Covers the fundamentals of object-oriented programming in C++, including encapsulation, inheritance, and polymorphism. It useful reference for understanding the concepts covered in the course.
Provides a comprehensive overview of C++ network programming. It covers a variety of topics, including object-oriented programming techniques for network programming. It valuable resource for those who want to learn more about this important topic.
Provides a comprehensive overview of C++ programming, including object-oriented programming concepts. It valuable resource for understanding the broader context of the topics covered in the course.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Object-Oriented C++: Inheritance and Encapsulation.
C++ Programming: Intermediate Concepts
Most relevant
C++ Programming: Basic Skills
Most relevant
C++ Programming: Object-Oriented Design
Most relevant
C++ Basic Structures: Vectors, Pointers, Strings, and...
Most relevant
C++ Basics: Selection and Iteration
Most relevant
C++ Object Basics: Functions, Recursion, and Objects
Most relevant
Java Programming: Object-Oriented Design
Most relevant
Python Programming: Intermediate Concepts
Most relevant
Java Programming: Intermediate Concepts
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser