首字母指代概念S单一职责原则认为“对象应该仅具有一种单一功能(职责)”的概念。O开闭原则认为“软件应该是对于扩展开放的,但是对于修改封闭的”的概念。L里氏替换原则认为“程序中的对象应该是可以在不改变程序正确性的前提下被它的子类所替换的”的概念。参考契约式设计。I接口隔离原则认为“多个特定客户端接口要好于一个宽泛用途的接口”的概念。D依赖反转原则认为一个方法应该遵从“依赖于抽象而不是一个实例”的概念。依赖注入是该原则的一种实现方式。