~/talk

OOP revisited

Talkat 4Developers 2022 Online · 2022-04-04..04-07· [software-architecture]
links:none on file
slides:none on file

Practical checklist for making Java code actually object oriented: avoid JavaBean setters/getters and Lombok-generated mutability, prefer domain methods and immutable returns, validate in constructors, use Optional for nullable state or wrap it internally, measure cohesion with LCOM4 metric, apply tell don't ask, prefer composition over inheritance, use ports/adapters / hexagonal architecture for dependency inversion, beware of sealed classes and toList immutability leaking mutability, and keep public API minimal and focused.

AI-written summary · about

  1. 0:00Intro
  2. 0:32What is OOP
  3. 2:13Principles
  4. 3:13Encapsulation
  5. 10:29Visibility
  6. 11:43Abstraction
  7. 12:52Information experts
  8. 15:26Law of the matter
  9. 16:34Single responsibility principle
  10. 20:41Inversion
  11. 24:39Creator
  12. 26:26Interface segregation
  13. 28:16Inheritance
  14. 29:13Risk of Substitution
  15. 30:26OpenClose Principle
  16. 31:36Explicit Branch
  17. 32:19Seed Classes
  18. 33:29Object Class
  19. 34:43Prevent Inheritance
  20. 37:07Composition
  21. 38:49Polymorphism
  22. 39:37Overriding
  23. 40:36Evolution
  24. 42:42Rename
  25. 42:56Key takeaways
~/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.