MUO

Object Oriented Programming

Readers like you help support MUO. When you make a purchase using links on our site, we may earn an affiliate commission. Read More.

latest

Woman holding a Python book in her hands
Using the super() Function in Python Classes

Inheritance is useful, but you can unlock its full potential by reusing code from base classes.

By 
Hand typing code with Python book on the side
Understanding Shallow and Deep Copy in Python

Sometimes, you’ll want a full copy of an object, other times you’ll want it to use references. See the differences in action.

By 
Generic paper men
How to Create and Use a Generic Class in Java

Generic classes facilitate reusability. Make your code scalable and efficient using generic classes in Java.

By 
How to Create, Import, and Reuse Your Own Module in Python-Featured
How to Create, Import, and Reuse Your Own Module in Python

We explain an important fundamental of code reusability in Python: modules.

By 
The Rust logo alongside an illustration of a stack of crates bearing the same logo
How to Implement Object-Oriented Programming Concepts in Rust

Rust lacks native support for OOP but you can use these techniques to take advantage of the paradigm anyway.

Person working on a laptop
What Is the Adapter Design Pattern and How Can You Use It?

Use this pattern to reuse third-party code without having to rewrite all your own.

By 
Image of factory
What Is the Factory Design Pattern?

The Factory Design Pattern is a useful tool in software development. Learn what it is and how to implement it using Java.

By 
A large JavaScript logo on a blue background
How Do Proxy Objects Work in JavaScript?

Proxy objects give you another way to override defined object behavior.

By 
A builder holding two pieces of wood together with a metal clamp
What Is the Builder Design Pattern?

Solve your creation problems for complex objects with this useful pattern.

By 
Person wrapping a gift
What Is the Decorator Design Pattern?

Discover the decorator pattern and build more flexible, extensible object hierarchies.

By 
Somebody holding a laptop in one hand writes on a whiteboard with their other.
What Is the Template Method Design Pattern?

Use the power of abstract and final methods to keep control over subclass implementations.

By 
intro-object-oriented-programming
What Is Object Oriented Programming?

Most modern programming languages support the "object-oriented programming" (OOP) paradigm. But what exactly is OOP and why is it so useful?

By 
A dark monitor displaying TypeScript code in the VSCode editor.
Implementing the State Pattern in TypeScript

You can use this classic pattern to solve many programming problems.

By 
A dark monitor displaying TypeScript code in the VSCode editor.
Understanding Constructors in JavaScript

JavaScript handles object-oriented programming quite differently from most other languages. It all begins with constructors.

By 
Letter blocks spelling out the word “JAVASCRIPT”
An Introduction to Module Systems in JavaScript

The JavaScript community found a variety of ways to organize code into modules. Find out how the module system evolved in the JavaScript ecosystem.

By 
Tree with green leaves
How to Use the Java TreeMap Data Structure

A TreeMap is a memory-efficient data structure which works well with an unknown quantity of data. Find out how to use this class in Java.

By 
Person using laptop
Learn How to Create Classes in C#

Explore object-oriented programming with classes and objects in C#.

By 
A grid of mobile app icons showing Instagram most prominently
Objective-C vs. Swift: Which Is Best for Your Project?

Apple developed Swift as a replacement for Objective-C, but is the newer language always the best choice?

By 
object-oriented-go
How to Implement Object-Oriented Programming Concepts in Go

Getting to grips with object oriented programing in Go isn't as tough as you think.

A white laptop
The 3 Major Programming Paradigms You Should Know

Programming languages are complex beasts. Not only can they look very different, their entire operational models can be fundamentally different.

By 
See more articles +