面向对象的特性
封装
继承
多态
面向对象的本质
封装稳定的抽象
设计原则为指导
设计模式为手段
设计原则
职责单一原则:SRP,单一职责原则,一个类应该有且只有一个改变的理由。
里氏替换原则:Liskov替换原则,派生类要与其基类自相容
开闭原则:OCP,开放封闭原则,你应该能够不用修改原有类就能扩展一个类的行为。
依赖倒置原则:DIP,依赖倒置原则,依赖于抽象而不是实现。
接口隔离原则:ISP,接口隔离原则,客户只要关注它们所需的接口。
可以从考虑实现者和使用者的扩展性角度分类
实现者:职责单一原则 里氏替换原则 依赖倒置原则 开闭原则
使用者:接口隔离原则
包设计原则
重用发布等价原则(The Release Reuse Equivalency Principle (REP))
要继承以前发布的版本
共同重用原则(The Common Reuse Principle (CRP))
重用了包里的一个类就可以重用包里的所有的类
共同封闭原则(The Common Closure Principle (CCP))
这是单一职责原则对于包的重新规定
无环依赖原则(The Acyclic Dependencies Principle (ADP))
包的依赖关系图应该是一个有向无环图。打破环的第一个方法:
依赖倒置原则,使一个包不再依赖于另一个包,而只是依赖于其抽象接口;第二个方法: 创建一个新包来包含公共依赖部份。
稳定依赖原则(The Stable Dependencies Principle (SDP))
朝着的稳定的方向进行依赖
稳定抽象原则(The Stable Abstractions Principle (SAP))
一个稳定的包同时应该是抽象的
CCP有益于维护者(包的作者),而REP和CRP有益于重用者(包的使用者)。
最终目标
高内局、低偶合、灵活的扩展
内在联系
面向对象的特性经过实践产生了设计原则,设计原则指导产生了各式各样的设计模式。
分享到:
相关推荐
以下是对各个设计原则的详细说明: 1. **系统总体设计原则**: - **统一设计原则**:这强调了在设计时需全局考虑,包括应用系统结构、数据模型、存储和扩展规划,确保一致性。 - **先进性原则**:采用成熟且先进...
而对于其他模式和原则,应以类似的方式进行学习和应用,不断深入理解每个设计模式的特点和适用场景,以及设计原则的核心指导思想,最终能够在实际开发中灵活运用,编写出高质量、高内聚低耦合、易于扩展的代码。
发现了在触摸屏界面设计上存在的问题,深感触摸屏界面可用性的重要性以及在设计中人力物力投资的重复性,从而得出了为触摸屏界面提供一套通用的设计原则的必要性。 文章开篇第一章首先说明了一下研究背景...
数据库索引设计原则 数据库索引设计原则是 Oracle 数据库管理系统中的一项重要技术,旨在提高数据库的查询效率和性能。以下是数据库索引设计原则的详细解释。 一、基本原则 数据库索引设计原则的基本原则是确保...
在Android开发中,设计模式和设计原则是提升代码质量、可维护性和可扩展性的重要工具。以下是关于"Android 24种设计模式介绍与6大设计原则"的详细阐述: 一、六大设计原则 1. **单一职责原则(Single ...
这个PDF文档“24种设计模式介绍与6大设计原则”旨在帮助开发者理解和应用这些模式,提高代码的可维护性和可扩展性。以下是其中的主要内容: 一、设计原则 1. 单一职责原则:一个类或模块应只有一个引起其变化的原因...
面向对象设计原则是软件开发中不可或缺的指导方针,它们旨在提升软件的可维护性和复用性,从而提高开发效率和质量。C++作为一门支持面向对象编程的语言,遵循这些原则可以使代码更加健壮和易于扩展。以下是7个常用的...
理解并遵循EMI设计原则和电磁兼容设计原则对于提升电路板的抗干扰性能至关重要。 首先,我们要明白EMI是指由于电路中电流的变化产生的电磁场对周围环境产生的影响,这可能会影响其他电子设备的正常工作。为了减少...
面向对象设计原则是软件开发中至关重要的一环,它关乎到代码的可维护性、扩展性和复用性。本文将深入探讨这些原则,并结合实例来解释它们的重要性。 首先,我们需要理解面向对象不仅仅是编程语言中的概念,如封装、...
通过以上三个面向对象的设计原则,我们可以构建出更加健壮、灵活且易于维护的软件系统。这些原则不仅适用于特定的语言环境,而且对于所有的面向对象编程语言都有普遍的意义。理解和掌握这些原则,对于提升软件开发的...
高速PCB EMC设计的47个原则二、PCB设计原则归纳 原则1:PCB时钟频率超过5MHZ或信号上升时间小于5ns,一般需要使用多层板设计。 原因:采用多层板设计信号回路面积能够得到很好的控制。 原则2:对于多层板,关键...
在软件设计领域,设计原则是指导软件系统构建的基础法则和最佳实践,它们可以帮助开发者构建出更加灵活、可维护和可扩展的系统。在嵌入式系统开发中,这些原则同样适用,并且需要根据嵌入式环境的特殊性进行适当的...
### Java设计原则详解 #### 一、基本原则与实践 **原则1:避免不必要的代码重复** 根据Arthur J. Riel的观点,在设计时应当避免代码的重复。例如在第13页提到,应尽量减少相似功能模块的重写,这有助于提高代码的...
24种设计模式介绍与6大设计原则24种设计模式介绍与6大设计原则
面向对象设计原则是软件工程领域中的重要组成部分,旨在提高软件系统的可维护性、可扩展性和灵活性。其中,类设计原则尤为关键,它们指导着开发者如何合理地构建类,以适应不断变化的需求。以下是对给定文件中提及的...
数据采集系统设计原则与基本方法 数据采集系统设计原则与基本方法是数据采集系统设计的基础,掌握这些原则和方法是设计高质量的数据采集系统的关键。本文将对数据采集系统设计的基本原则和方法进行详细的解释。 一...
设计原则和设计模式是OOD的核心概念,它们为开发者提供了指导思想和最佳实践,以创建可维护、可扩展和易于理解的代码。在Swift中,遵循这些原则和模式可以帮助我们编写出更加灵活和高效的软件。 面向对象设计的原则...
"系统总体设计原则(信息化项目)" 本文将从系统总体设计原则的角度对信息化项目的设计原则进行详细分析和解释。 1. 统一设计原则 系统总体设计原则的第一条原则是统一设计原则,这意味着在系统的建设和技术方案...