(1)SRP(The Single Responsibility Principle)单一责任原则:表明软件组件(函数、类、模块)必须专注于单一的任务(只有单一的职责)
(2)OCP(The Open-Closed Principle)开放-封闭原则:表明软件设计时必须时刻考虑到(代码)可能的发展(具有拓展性),但是程序的发展必须最少的修改已有的代码(对已有的修改封闭)
(3)LSP(The Liskov Substitution Principle)Liskov替换原则:表明只要继承的是同一个接口,程序里任意一个类都可以被其他的类替换。在替换完成后,不需要其他额外的工作程序就能像原来一样运行
(4)ISP (The Interface Segregation Principle)接口聚合原则:表明我们应该将那些非常大的接口(大而全的接口)拆分成一些小的更具体的接口(特定客户端接口),这样客户端就只需关心他们需要用到的接口
(5)DIP(The Dependency Inversion Principle)依赖反转原则:表明一个方法应该遵从依赖于抽象(接口)而不是一个实例(类)的概念