Object-Oriented-Design
Recent articles
Showing 24 of 34
Visitor Pattern
A behavioral design pattern that lets you add new operations to existing object structures without modifying …Template Method Pattern
A behavioral design pattern that defines the skeleton of an algorithm in a base class, letting subclasses …Strategy Pattern
A behavioral design pattern that defines a family of algorithms, encapsulates each one, and makes them …State Pattern
A behavioral design pattern that allows an object to alter its behavior when its internal state changes, …SOLID Principles
Five foundational object-oriented design principles that promote maintainable, flexible, and understandable …Singleton Pattern
A creational design pattern that ensures a class has only one instance and provides a global point of access …Single Responsibility Principle (SRP)
A SOLID design principle stating that a class should have only one reason to change, meaning it should …Proxy Pattern
A structural design pattern that provides a surrogate or placeholder for another object to control access to …Prototype Pattern
A creational design pattern that creates new objects by cloning an existing instance, avoiding the cost of …Open-Closed Principle (OCP)
A SOLID design principle stating that software entities should be open for extension but closed for …Observer Pattern
A behavioral design pattern that defines a one-to-many dependency between objects so that when one object …Memento Pattern
A behavioral design pattern that captures and externalizes an object's internal state so it can be restored …Mediator Pattern
A behavioral design pattern that defines an object that encapsulates how a set of objects interact, promoting …Liskov Substitution Principle (LSP)
A SOLID design principle stating that objects of a supertype should be replaceable with objects of a subtype …Law of Demeter
A design guideline for developing software, particularly object-oriented programs, that promotes loose …Iterator Pattern
A behavioral design pattern that provides a way to access elements of an aggregate object sequentially without …Interpreter Pattern
A behavioral design pattern that defines a representation for a language's grammar and provides an interpreter …Interface Segregation Principle (ISP)
A SOLID design principle stating that no client should be forced to depend on methods it does not use, …Inheritance and Polymorphism
Core object-oriented programming mechanisms: inheritance creates class hierarchies for code reuse, while …Flyweight Pattern
A structural design pattern that uses sharing to support large numbers of fine-grained objects efficiently by …Factory Method Pattern
A creational design pattern that defines an interface for creating objects but lets subclasses decide which …Facade Pattern
A structural design pattern that provides a simplified interface to a complex subsystem, reducing the coupling …Encapsulation
A fundamental object-oriented programming principle that bundles data and the methods that operate on that …Dependency Inversion Principle (DIP)
A SOLID design principle stating that high-level modules should not depend on low-level modules, and both …
34 articles in this section. Search for a specific topic.
Open source projects