Showing posts from August, 2019

Notes about Implementation Patterns

These are my notes about the Implementation Patterns book from 2008 by Kent Beck. Chapter 3 - A Theory of Programming Kent Beck values (in this particular order): Communication through the code to the reader. Communication has a economic background - the code is more frequently read than written. So we should optimize for readability. Simplicity , i.e. removing complexity from the code. With complexity we loose audience. Flexibility , i.e. responding to changes well (e.g. configurability). He uses the following principles while programming: Local Consequences - i.e. keep the changes as local as possible. Minimize Repetition - minimize situations when you have to do the same change in many different places in the code. It can be achieved by splitting the code into small parts. Logic and Data Together - logic and the data should be as close as possible. Ideally in one file, but a common or near package could suffice. The point again is to keep changes local. Symmetry