Greg Young’s 19.5 things from Øredev

This is a time guide to Greg’s session. It is a pretty damn good session to clean up some mental cruft you may have about the subject.

The times allow you to jump straight to the point of interest.

Class!=Object – 1:08

Method Call = Message – 2:20

Objects are not “data” – 4:04

“Is a”? – 7:06

Dependencies point in – 09:19

Constructors are special. Dependencies should tend to be readonly after construction. – 12:33

Single Responsibility – 15:03

SO(-L)ID are heuristics to Ca,Ce and cohesion. – 17:04

Liskov is Special – 20:30

MVC is not a UI pattern – 24:12

Value Objects are important – 25:00

DRY, our psychological problem – 28:48

Model “useful abstractions” of reality – 32:05

Testing builds better objects, as does contracts – 34:11

Commands and Queries – 39:10

Objects play roles – 40:34

Model the boundaries  of transactions explicitly – 41:34

Pattern languages are about communication – 43:19

Not all code should be OO, boundaries are almost always not – 45:16

Don’t take yourself too seriously – 46:22