GRASP Principles of Software Engineering
General Responsibility Assignment Software Patterns. Creator Who is responsible for creating an object? Making it apparent which objects are responsible for creating other objects. Controller MVC. Should separate view from model (business logic). Use Controller to coordinate this. Pure Fabrication When the behavior does not belong anywhere else, create a new class. Information Expert A... » read more