~/talk

Law of Demeter: A Practical Guide to Loose Coupling

Talkat ACCU 2022 · 2022-04-06..04-09· [software-architecture, design-collaboration]
links:none on file
slides:none on file

Shows concrete before/after C++ code: a god-object using singletons and chain calls like manager.instance.getSpeakers.get that is hard to test, then refactors with one dot via constructor injection, SRP, dependency inversion and manual DI. Demonstrates runtime options (type erasure, std::variant, std::function) and compile-time options (C++20 concepts, templates) and wires modules in main. Argues DI frameworks are optional, warns about over‑engineering and leaky abstractions, and recommends TDD/BDD to drive a testable, loosely coupled design.

AI-written summary · about

  1. 0:00Introduction and overview
  2. 1:06Software design philosophy
  3. 5:37The importance of change
  4. 8:58Core design principles
  5. 11:17Stupid principles example
  6. 22:31Testing tight coupling
  7. 27:22Law of Demeter
  8. 29:02Refactoring with Demeter
  9. 31:15SOLID principles overview
  10. 35:08Single responsibility
  11. 36:38Loose coupling improvement
  12. 38:37Dependency injection
  13. 42:50DI myths
  14. 44:06DI and singletons
  15. 44:46Leaky abstractions
  16. 46:34Strong typing
  17. 46:55Combining parameters
  18. 47:28Dependency inversion
  19. 49:57Concepts and C++20
  20. 55:28Composition over inheritance
  21. 56:17Conclusion and TDD/BDD
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.