DESIGN · 71 ARTICLES

Software Design

Good design begins with reducing the cost of change. Connect object-oriented principles, design patterns, dependencies, and modularization into one practical flow.

Topic map

What this topic covers

Design principles and OOP

Build a practical understanding of design principles and oop from the underlying principles.

Design patterns

Build a practical understanding of design patterns from the underlying principles.

Dependency design

Build a practical understanding of dependency design from the underlying principles.

Modularization

Build a practical understanding of modularization from the underlying principles.

Start here

New here? Start with these

A guided path from fundamentals to the next step.

All articles

All articles

Showing 12 of 71
Software Design4 min read

Factory Method vs. Abstract Factory

The GoF Factory Method delegates the decision of an object's concrete type to subclasses, while Abstract Factory creates families of related products together. This article compares their intent and selection criteria with Swift examples.

Read article