Uncle Bob Clean Code Checklist Architecture

  • Architecture
    • What is [[design]] and [[architecture]]?
      • Roughly the same thing
    • Goal: Minimize the human resources to build and maintain code.
    • Quality can be measured in amount of effort to build something.
      • If the effort increases - the design is bad.

What is the goal of an architecture?::To minimize the human resources to build and maintain code.

Most startups fail because they can't maintain.

  • Slow & steady wins the race.
  • Over confidence that we will be able to clean up the mess later - that never happens.
  • Key to speed - not to slow down, in a steady, consistent and clean way.
  • [[TDD]] is always faster.
  • Solution: just be as clean as possible.

Software

  • Software must be [[changeable]], changes must be cheap.
  • Software (does not work, changeable) > Software(works, not changeable)

Clean architecture

[[Change isolation]]:

  • Plugin to business rules
  • [[Plugin architecture]]

Frameworks:

  • not made for your benefit but for authors
  • decouple from frameworks
  • Look at the cost benefit when using them.