Object Oriented Programming - bradyclifford/sdlc GitHub Wiki
Great talk about OOP by Sandi Metz: https://youtu.be/XXi_FBrZQiU
Churn vs. Complexity
Affordances
- Anthropomorphic: objects have life
- Polymorphism: mimic, conform to same API
- Loose coupling
- Role Playing: same as mimicking, conforms to same API
- Factory Created: hide conditions that choose objects
- Message Sending: shouldn't know the implementation
Key notes for me:
- Reduce your execution paths
- Dependency Injection is your friend
- Balance between procedurally and OOP, don't swing the pendulum to either side, find the right balance
- Factories are a good thing
- Don't use methods or classes to just hide code (edited)