Book Review: A Philosophy of Software Design
Page count: 176
Time to read: 5h 0m
Category: Technology
One-sentence description: A guide on how to reduce complexity in software.
This book was: a little too long
Do I think there's value for me to read this book again? no
If my memory was erased, I would tell myself to: read it eventually
Top 3 takeaways:
- Interfaces should be simple.
- Methods/functions/classes should be deep.
- Deep in this context means to have much complexity inside the thing, hidden from the outside. Several lines of code for a function is often a sign of a shallow function.
- Documentation/comments are often part of an interface. They are used to communicate things that cannot be represented in code.
Quotes:
"The greater the distance between a name's declaration and its uses, the longer the name should be."