Software Design

Principles, design patterns and low-level design: model real problems as clean objects, from a parking lot to a chess game.

By the end you can

  • Apply the SOLID principles to real code
  • Choose and use creational, structural and behavioural patterns
  • Shape a codebase with clean, hexagonal and domain-driven ideas
  • Model a parking lot, an elevator or a booking system as clean objects
  • Break down a new low-level design problem with a method, not a guess
Start: How to learn design patterns6 steps · about 8 hours of lessons and videos
0%

Not started

Clean Code DesignerMaster every step
  1. Learn · 0/2

    Watch · 0/3

    Read · 0/1

    0% done. At 80% this step counts as mastered.

Master all 6 steps to earn the Clean Code Designer badge and a grade. A step counts as mastered when you have done 80% of it. Lessons you finish, labs you pass and videos you watch on the site tick themselves.