Low-Level Design (LLD)

Object-Oriented Design and Design Patterns.

0 / 73 concepts read

595 min left

Start here

What low-level design is

Approach · 8 min

Start reading

Approach

0 of 6 read · 50 min left

  1. What low-level design is8 min
  2. How to approach an LLD problem11 min
  3. UML class diagrams8 min
  4. UML sequence and state diagrams8 min
  5. Modeling entities & relationships8 min
  6. Responsibilities and collaborations7 min

Object-Oriented Basics

0 of 11 read · 69 min left

  1. Classes, objects and state7 min
  2. Encapsulation6 min
  3. Abstraction7 min
  4. Inheritance6 min
  5. Polymorphism6 min
  6. Interfaces vs abstract classes6 min
  7. Composition over inheritance6 min
  8. Generics6 min
  9. Enums and sealed hierarchies7 min
  10. Value objects, equality and immutability6 min
  11. Errors and exceptions6 min

Design Principles

0 of 11 read · 101 min left

  1. Coupling & cohesion6 min
  2. Single Responsibility Principle10 min
  3. Open/Closed Principle11 min
  4. Liskov Substitution Principle11 min
  5. Interface Segregation Principle9 min
  6. Dependency Inversion Principle9 min
  7. Dependency injection9 min
  8. Law of DemeterDeep dive9 min
  9. Design by contract9 min
  10. DRY, KISS & YAGNI9 min
  11. Encapsulate what varies9 min

Smells and Refactoring

0 of 3 read · 27 min left

  1. Code smells9 min
  2. Refactoring in small steps9 min
  3. Design anti-patterns9 min

Creational Patterns

0 of 6 read · 48 min left

  1. Factory Method8 min
  2. Abstract FactoryDeep dive8 min
  3. Builder Pattern8 min
  4. Prototype PatternDeep dive8 min
  5. Singleton Pattern8 min
  6. Object PoolDeep dive8 min

Structural Patterns

0 of 7 read · 57 min left

  1. Adapter Pattern7 min
  2. Decorator Pattern7 min
  3. Proxy Pattern9 min
  4. Facade Pattern9 min
  5. Composite Pattern9 min
  6. Bridge PatternDeep dive8 min
  7. Flyweight PatternDeep dive8 min

Behavioral Patterns

0 of 13 read · 107 min left

  1. Strategy Pattern9 min
  2. Observer Pattern8 min
  3. Command Pattern8 min
  4. Template Method8 min
  5. Iterator Pattern8 min
  6. State Pattern8 min
  7. State machines9 min
  8. Chain of Responsibility9 min
  9. Mediator PatternDeep dive8 min
  10. Memento PatternDeep dive8 min
  11. Visitor PatternDeep dive8 min
  12. Interpreter PatternDeep dive8 min
  13. Null ObjectDeep dive8 min

Application Structure

0 of 6 read · 56 min left

  1. Layered architectureDeep dive10 min
  2. Model-View-Controller9 min
  3. Repository10 min
  4. Domain model and service layer9 min
  5. Ports and adaptersDeep dive9 min
  6. Packages and dependency rulesDeep dive9 min

Designing for Tests

0 of 2 read · 17 min left

  1. Testability9 min
  2. Test doubles8 min

Concurrency

0 of 8 read · 63 min left

  1. Threads & thread safety8 min
  2. Atomics and memory visibilityDeep dive9 min
  3. Locks & read-write locks8 min
  4. Deadlocks7 min
  5. Producer-consumer8 min
  6. Thread pools8 min
  7. Concurrent data structuresDeep dive7 min
  8. Futures and async8 min