一般来说这是面向对象的五大设计原则:
1、职责单一原则(Single Responsibility Principle (SRP))
一个类只做一件事情,并且要把这件事情做好,只有一个因其他变化的原因。
单一职责,意味着单一功能,因此不能为一个模块设计过多的功能点。
2、开闭原则(Open/Closed Principle (OCP))
模块可以扩展,不能修改。也就是说,模块对扩展是开放的,对修改是关闭的
对扩展开放,意味着有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况
对修改封闭,意味着类一旦设计完成,就可以独立完成其工作,而不要对类进行任何修改(这个工作中违背的太令人发指了)
3、里氏代换原则(Liskov substitution principle (LSP))
“Subtypes must be substitutable for their base types”--子类应该可以替换任何基类能够出现的地方,并且经过替换以后,代码还能正常工作。
4、接口隔离原则(Interface Segregation Principle (ISP))
把功能实现在接口中,而不是类中,使用多个专门的接口比使用单一的总接口要好
和原则一有点共通之处
5、依赖倒置原则(Dependency Inversion Principle (DIP))
高层模块不应该依赖于低层模块的实现,而是依赖于高层抽象。
这个依赖于设计的条理性和各模块的分工及协作(工作)关系。
在此做个记录,以后要多多考虑这些原则,学以致用。