fbpx

OOP Fundamentals

In this course, we will be learning one of the most widely used programming methodologies called Object-Oriented Programming(OOP). Understanding OOP is critical to software architecture, code quality, and refactoring when dealing with languages that are OO-based.

OOP has different advantages over procedural programming that we will be covering, ranging from its member types to advanced OOP Concepts. These are the building blocks that allow us to better understand and Design Patterns. How fun is that!!!

“…It is of vital importance to learn the fundamental concepts of object orientation before starting to use object-oriented development environments. OOP promotes good design practices, code portability, and reuse–but it requires a shift in thinking to be fully understood. Programmers new to OOP should resist the temptation to jump directly into a particular programming language…” – Matt Weisfield, author of The Object-Oriented Thought Process.

OOP Introduction

1
OOP Introduction
3 minutes
2
Class Anatomy
10 minutes

OOP Object Types

1
Classes
5 minutes
2
Interfaces
5 minutes
3
Abstract Classes
7 minutes

Abstract Classes can help us minimize the code we write and add base functionality to the classes we write. Just like Interfaces, Abstract Classes have their own pros and cons but are very useful.

4
Quiz: OOP Object Types
5 questions

Understanding the differences between classes, abstract classes, and interfaces is crucial to implementing design patterns and other advanced OOP concepts. Let's put our new knowledge to the test!

OOP Concepts

1
Encapsulation
7 minutes

Encapsulation is the concept of seeing data and functionality as a unit and bundling it into a single class. Encapsulation can keep our codebase clean and maintainable.

2
Abstraction
8 minutes

Abstraction is the concept of hiding unnecessary data and/or functionality. Abstraction can help us keep common functionality hidden so that we can focus on unique functionality for each specific object in a specialized sense.

3
Inheritance
5 minutes

Inheritance is the concept of a class inheriting the attributes and methods of another class. Inheritance can help us follow the DRY principles and decide whether we want to generalize or specialize functionality.

4
Polymorphism
5 minutes

Polymorphism means "many forms". Polymorphism can helps us override generalized functionality in order to allow classes to have specialized functions.

5
Composition
7 minutes

Composition is a form of inheritance. Composition allows us to build complex objects from other complex objects.

6
Quiz: OOP Concepts
1 question

We now understand the building block of Object-Oriented Programming. Knowing these concepts is going to allow us to determine how to solve whatever programming problems we have. Let's put our knowledge to the test.

Be the first to add a review.

Please, login to leave a review
Enrolled: 2 students
Duration: 1.5 hours
Lectures: 10
Video: 1 hour
Level: Beginner
This website uses cookies and asks your personal data to enhance your browsing experience.