S.O.L.I.D是面向对象设计和编程(OOD&OOP)中几个重要编码原则(Programming Priciple)的首字母缩写。
SRP | The Single Responsibility Principle | 单一责任原则 |
OCP | The Open Closed Principle | 开放封闭原则 |
LSP | The Liskov Substitution Principle | 里氏替换原则 |
DIP | The Dependency Inversion Principle | 依赖倒置原则 |
ISP | The Interface Segregation Principle | 接口分离原则 |
Steve Smith在5月份的微软TechED 2009上有个SOLIDify Your ASP.NET MVC的讲座, derick.bailey的SOLID Development Principles – In Motivational Pictures很好的解释了SOLID原则。
单一责任原则:
当需要修改某个类的时候原因有且只有一个(THERE SHOULD NEVER BE MORE THAN ONE REASON FOR A CLASS TO CHANGE)。换句话说就是让一个类只做一种类型责任,当这个类需要承当其他类型的责任的时候,就需要分解这个类。
开放封闭原则
软件实体应该是可扩展,而不可修改的。也就是说,对扩展是开放的,而对修改是封闭的。这个原则是诸多面向对象编程原则中最抽象、最难理解的一个。
里氏替换原则
当一个子类的实例应该能够替换任何其超类的实例时,它们之间才具有is-A关系
依赖倒置原则
1. 高层模块不应该依赖于低层模块,二者都应该依赖于抽象
2. 抽象不应该依赖于细节,细节应该依赖于抽象
接口分离原则
不能强迫用户去依赖那些他们不使用的接口。换句话说,使用多个专门的接口比使用单一的总接口总要好。
这几条原则是非常基础而且重要的面向对象设计原则。正是由于这些原则的基础性,理解、融汇贯通这些原则需要不少的经验和知识的积累。上述的图片很好的注释了这几条原则。
相关推荐
面向对象设计的SOLID原则 .docx
面向对象的11个设计原则 SOLID原则 单一职责原则(The Single Responsibility Principle) 开放/关闭原则(The Open Closed Principle) 里氏替换原则(The Liskov Substitution Principle) 依赖倒置原则(The Dependency ...
面向对象设计原则是OOPS编程的核心.(这里为大家整理了一下,网上提供)
面向对象设计原则是OOPS编程的核心, 但我见过的大多数Java程序员热心于像Singleton (单例) 、 Decorator(装饰器)、Observer(观察者) 等设计模式,而没有把足够多的注意力放在学习面向对象的分析和设计上面。...
Shubho:通过我们关于面向对象设计原则(OODP,即SOLID原则)的对话,我想你已经对面向对象设计原则(OODP)有了基本的认识。希望你不要介意我把对话分享到博客上。你可以在这找到它:《如何向妻子解释OOD》. 设计...
Solid通常与使用面向对象设计的系统一起使用。 SOLID由Robert C提拔。 S-SRP Принципединственнойответственности(单一责任原则) Длякаждогоклассадолжн...
一本关于 SOLID 原理和面向对象软件设计的书编程很困难。 好的代码充分反映了它所描述的系统,它能够抵抗这个系统的变化。 糟糕的代码令人困惑、脆弱且难以理解——它会减慢开发速度。 当代码不再符合现实——业务...
SOLID设计原则该存储库包含面向对象编程的五项SOLID设计原理的示例。 这些示例是用Java编写的。 每个示例都有一个“好”和“坏”版本,分别用来证明遵守和违反该原则。 单一责任原则开/关原则里斯科夫替代原则接口...
这是任何一本面向对象设计的书里都会介绍的,但鲜有讲清楚的,新手看了之后除了记住几个概念外,并没真正了解他们的意义。前几天在youtube上看了Bob大叔讲解的SOLID原则,其中有一段提到面向对象的三大特性,收获很...
这个存储库是我的知识共享存储库,它是关于设计模式、面向对象编程概念和 SOLID 原则的。 我简要分享了我对这些主题的了解,并为每个主题提供了简单的示例 内容 面向对象编程 面向对象编程(OOP)是一种依赖于类和...
1、单一职责原则单一职责原则(SRP:Single responsibility principle)又称单一功能原则,面向对象五个基本原则(SOLID)之一
ePUB格式。可用iBook阅读。 本书概要介绍了如何设计好面向对象软件。重点是SOLID设计原则。另外简单介绍了如下一些内容: 1.敏捷过程,Scrum和看板。 2.重构 3.依赖注入
这些规则有助于我们的系统遵守低耦合和高内聚的主要面向对象目标。 SOLID 原则是类设计的五个原则。 他们是: 单一职责原则 开闭原则 里氏替换原则 接口隔离原则 依赖倒置原则 单一职责原则(Actors 和高层架构) ...
PHP中的SOLID原理示例单一责任原则() 这个原则是关于参与者和高层架构的。 一堂课应该只有一个改变的理由。开闭原理() 这个原则是关于类设计和功能扩展的。...有关面向对象的设计原则的更多信息,您可以参考
最好的解决方案是使用uma API,使用TDZ(面向对象的测试方案),最好的是trabalho的清洁架构,可以通过分配给客户的解决方案,可以免费使用semper quepossível,“ Aplicando设计模式”解析器解决方案,常见问题。...
最好的解决方案是使用uma API,使用TDZ(面向对象的测试方案),最好的是trabalho的清洁架构,可以通过分配给客户的解决方案,可以免费使用semper quepossível,“ Aplicando设计模式”解析器解决方案,常见问题。...
Martin)收集了有关面向对象设计的。 其中的前五个(即所谓的SOLID原则)处理类的设计。 SOLID是Robert C. Martin(也称为Bob叔叔)的前五个面向对象设计(OOD)原理的首字母缩写。 这些原则建立了一些实践,这些...
我们将熟悉面向对象软件设计的SOLID原则。 我们将学习什么是迭代器和生成器以及如何使用它们。 我们将学习如何创建和使用装饰器。 我们将关注组件测试(编写单元测试)和测试驱动开发(TDD)的概念。获得的技能了解...
Python中的设计模式设计模式是针对常见编程问题的可...SOLID设计原则在面向对象的计算机编程中,SOLID是五个设计原则的助记词缩写,旨在使软件设计更易于理解,灵活和可维护。 这些原则是美国软件工程师和讲师Robert
1,针对面向对象的设计与分析:为了让软件有更好的可维护性,重用性以及快速开发,简短的OOAD与它的SOLID原则对于每一个软件工程师来说都是该牢记的。 2,软件品质因素:软件工程的好坏与软件的品质因素是绝对...