Surviving Object-oriented Projects -
Avoid deep inheritance hierarchies (more than two levels is often "brittle") and prefer composition to keep the system maintainable. 4. Manage the Human Element
Focus on picking nouns for classes and verbs for methods to stay close to the actual business problem. Surviving Object-Oriented Projects
Building a successful object-oriented (OO) project is less about mastering syntax and more about navigating the human and structural "holes" that swallow most software initiatives. Based on the principles in Alistair Cockburn's seminal work, Surviving Object-Oriented Projects , and modern industry insights, Avoid deep inheritance hierarchies (more than two levels