clean code

## robert c. martin ### prentice hall, pearson education, 2008

the author is one of the main creators of the Agile Manifesto, and a leading figure in professional software development. The book is written with JAVA.

software architecture can draw its parallels from japanese 5S: - seiri ( +- naming, details) - seiton ( +- putting things where they belong) - seiso ( +- clean) - seiketsu ( +- standardization, consistency) - shutsuke ( +- self-discipline (opposite of emotional programming?))

“we had some back-of-the-enveloped findings indicating that suggested that consistent indentation style was one of the most statistically significant indicators of low-bug density”

style distinguishes excellence from competence, and it is beauty, but what kind of beauty? is clean code beautiful code? what is the step to beauty? beauty could/should also be seen as some sort of efficiency. something beautiful is something that is efficient at communicating sth (sth = a task, a concept)

why does bad code even exist? lack of experience? external constraints? lack of knowledge (is that the same as lack of experience?)

definitions by authors

the @author field of a Javadoc leaves no doubt as to who is doing what act (writing, for a group of readers)

expressiveness goes beyond words


names require a shared contextual background, rather than program-linguistic background.


coupling: degree of dependence between software modules (cna be temporal)

“the art of programming is the art of language design” - to what extent is literature language design? “the real goal is to tell the story of the system”

jump to the conclusion chapter

heuristics for bad code