Interface name vs Implementing class name
Interface name
- what it does
- point of view = “user” object
Implementing class name
- how it does it
- point of view = implementation
(src: Book: Growing Object Oriented Software, Guided By Tests - Steve Freeman & Nat Pryce)
Method name should describe what it does, not how
Method name should be
- what it does
- point of view = “user” object
instead of
- how it does it
- point of view = implementation
src: ??