~/talk

Spring Cleaning

Talkat Devnexus 2022 · 2022-04-12..04-14· [spring]
links:none on file
slides:none on file

Shows how to structure a Spring Boot service so business logic lives in pure Java domain packages, use cases become first‑class objects, and the domain owns the ports/interfaces while adapters implement them as separate modules. Uses Java 17 records, JUnit/Mockito tests and Spring only for wiring, achieving 100% test coverage for the domain with sub‑second test runs. Enforces dependency direction via ArchUnit rules and packages adapters as a Maven multi‑module set so individual adapter jars can be built and released independently.

AI-written summary · about

  1. 0:00Intro
  2. 2:04My Current Context
  3. 2:49Culture is What You Do
  4. 4:05The Big Ball of Mud
  5. 7:47Architecture includes...
  6. 14:27What makes code "good"?
  7. 17:41What makes an architecture "good"?
  8. 20:42What use cases do we need?
  9. 21:30First steps...
  10. 21:47Make Payment Use Case Analysis
  11. 26:03Make Payment Algorithm
  12. 31:00Get the domain under test
  13. 36:34Finishing the domain
  14. 41:43Integrate with SpringBoot
  15. 43:08Decide how to implement ports
  16. 45:57The Resulting (Clean) Architecture
  17. 48:12Clean Architecture Rules
  18. 49:35What are the tradeoffs?
  19. 52:24Maintaining the Architecture
  20. 54:34Testability
~/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.