The clean design and high performance are compatible.

Measure before (and after) modifying.

Software should be designed for ease of reading, not ease of writing.

One of the most important elements of good software design is separating what matters from what doesn’t matter.

Things that doesn’t matter should be hidden as much as possible.

Interface reflects what matters to the users of that module.

To decide what matters, look for leverage, where the solution to one problem also allows many other problems to be solved, or where knowing one piece of information makes it easy to understand many other things. The general purpose interface provided more leverage.

Minimize what matters.


<
Previous Post
读完a philosophy of software design
>
Next Post
Reduce work complexity for myself