Laws of Form and Object Oriented Programming