SOLID ...
S SRP Single responsibility principle, the notion that an object
should have only a single responsibility.
O OCP Open/closed principle, the notion that “software … should
be open for extension, but closed for modification”.
L LSP Liskov substitution principle, see also design by contract.
I ISP Interface segregation principle, the notion that “many client
specific interfaces are better than one general purpose interface.”
D DIP Dependency inversion principle, the notion that one should
“Depend upon Abstractions. Do not depend upon concretions.”
Dependency injection is one method of following this principle.
взято из http://en.wikipedia.org/wiki/Solid_%28object-oriented_design%29
(или какова аббревиатура вашего вкуса месяца;)
НТН
Andy