最近准备java面试,发现SSM框架里蛮多知识点,比如Spring中IOC,DI来源于面向对象的六大原则,了解六大原则有助于更深入理解java的设计原理。网上资料很多,整理下六大设计原则,总结如下:
原作者博客链接1
原作者博客链接2
一.单一职责原则(SRP)
原文链接
单一职责原则,英文缩写SRP,全称Single Responsibility Principle。
原始定义:There should never be more than one reason for a class to change。
官方翻译:应该有且仅有一个原因引起类的变更。简单点说,一个类,最好只负责一件事,只有一个引起它变化的原因。
原理解释
上面的定义不难理解,引起类变化的原因不能多于一个。也就是说每一个类只负责自己的事情,此所谓单一职责。
我们知道,在OOP里面,高内聚、低耦合是软件设计追求的目标,而单一职责原则可以看做是高内聚、低耦合的引申,将职责定义为引起变化的原因,以提高内聚性,以此来减少引起变化的原因。
其实在软件设计中,要真正用好单一职责原则并不简单,因为遵循这一原则最关键的地方在于职责的划分,(博主的理解是)职责的划分是根据需求定的,同一个类(接口)的设计,在不同的需求里面,可能职责的划分并不一样。
总结
没有最合理,只有最合适。理解单一职责原则,最重要的就是理解职责的划分

本文详细介绍了面向对象设计的四大原则:单一职责原则(SRP),开闭原则(OCP),接口隔离原则(ISP)和依赖倒置原则(DIP)。通过解释每个原则的定义、重要性和应用场景,帮助读者理解如何运用这些原则来提高代码的可维护性和可扩展性。文章强调了面向接口编程和抽象的重要性,指出良好的设计应尽量减少对已有代码的修改,而是通过扩展来应对需求变化。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



