DEV Community

Understanding The "Why" Behind Software Design Series' Articles

Back to Ashay Tiwari's Series
Understanding The "Why" Behind Software Design: Introduction
Cover image for Understanding The "Why" Behind Software Design: Introduction

Understanding The "Why" Behind Software Design: Introduction

2
Comments
3 min read
Why Object-Oriented Programming Was Introduced - Objects and Classes
Cover image for Why Object-Oriented Programming Was Introduced - Objects and Classes

Why Object-Oriented Programming Was Introduced - Objects and Classes

4
Comments
3 min read
Factory Functions vs Classes: If Classes Exist, Why Do We Still Use Factory Functions?
Cover image for Factory Functions vs Classes: If Classes Exist, Why Do We Still Use Factory Functions?

Factory Functions vs Classes: If Classes Exist, Why Do We Still Use Factory Functions?

4
Comments
3 min read
Encapsulation in OOP: Protecting an Object's State from Unintended Changes
Cover image for Encapsulation in OOP: Protecting an Object's State from Unintended Changes

Encapsulation in OOP: Protecting an Object's State from Unintended Changes

3
Comments
3 min read
Abstraction in OOP: Hiding Complexity Without Hiding Capability
Cover image for Abstraction in OOP: Hiding Complexity Without Hiding Capability

Abstraction in OOP: Hiding Complexity Without Hiding Capability

1
Comments
2 min read
Inheritance in OOP: Solving Code Duplication or Creating New Problems?
Cover image for Inheritance in OOP: Solving Code Duplication or Creating New Problems?

Inheritance in OOP: Solving Code Duplication or Creating New Problems?

2
Comments
2 min read
Composition vs Inheritance: Why Modern Software Often Prefers Composition
Cover image for Composition vs Inheritance: Why Modern Software Often Prefers Composition

Composition vs Inheritance: Why Modern Software Often Prefers Composition

2
Comments 2
3 min read
Polymorphism in OOP: One Interface, Multiple Implementations
Cover image for Polymorphism in OOP: One Interface, Multiple Implementations

Polymorphism in OOP: One Interface, Multiple Implementations

2
Comments
2 min read
Why OOP Wasn't Enough: The Problems That Led to SOLID
Cover image for Why OOP Wasn't Enough: The Problems That Led to SOLID

Why OOP Wasn't Enough: The Problems That Led to SOLID

1
Comments
4 min read
Single Responsibility Principle (SRP): How Much Responsibility Should a Class Really Have?
Cover image for Single Responsibility Principle (SRP): How Much Responsibility Should a Class Really Have?

Single Responsibility Principle (SRP): How Much Responsibility Should a Class Really Have?

2
Comments
3 min read
Open/Closed Principle (OCP): How Do We Add Features Without Breaking Existing Code?
Cover image for Open/Closed Principle (OCP): How Do We Add Features Without Breaking Existing Code?

Open/Closed Principle (OCP): How Do We Add Features Without Breaking Existing Code?

1
Comments
4 min read
Liskov Substitution Principle (LSP): Can Every Child Truly Replace Its Parent?
Cover image for Liskov Substitution Principle (LSP): Can Every Child Truly Replace Its Parent?

Liskov Substitution Principle (LSP): Can Every Child Truly Replace Its Parent?

2
Comments
4 min read
Interface Segregation Principle (ISP): Why Should a Class Implement What It Doesn't Need?
Cover image for Interface Segregation Principle (ISP): Why Should a Class Implement What It Doesn't Need?

Interface Segregation Principle (ISP): Why Should a Class Implement What It Doesn't Need?

2
Comments
4 min read
Dependency Inversion Principle (DIP): Why Should High Level Module Depend on Details?
Cover image for Dependency Inversion Principle (DIP): Why Should High Level Module Depend on Details?

Dependency Inversion Principle (DIP): Why Should High Level Module Depend on Details?

1
Comments
4 min read
Dependency Injection in JavaScript/TypeScript: Why Should a Class Create Its Own Dependencies?
Cover image for Dependency Injection in JavaScript/TypeScript: Why Should a Class Create Its Own Dependencies?

Dependency Injection in JavaScript/TypeScript: Why Should a Class Create Its Own Dependencies?

1
Comments
5 min read