六大设计原则(SOLID)

作者&投稿:穆美 (若有异议请与网页底部的电邮联系)
~

设计模式的六大原则有:

把这六个原则的首字母联合起来(两个 L 算做一个)就是 SOLID (solid,稳定的),其代表的含义就是这六个原则结合使用的好处:建立稳定、灵活、健壮的设计。下面我们来分别看一下这六大设计原则。

一个类应该只有一个发生变化的原因

六大设计原则之单一职责原则(SRP)

一个软件实体,如类、模块和函数应该对扩展开放,对修改关闭

六大设计原则之开闭原则(OCP)

所有引用基类的地方必须能透明地使用其子类的对象

六大设计原则之里氏替换原则(LSP)

只与你的直接朋友交谈,不跟“陌生人”说话

其含义是:如果两个软件实体无须直接通信,那么就不应当发生直接的相互调用,可以通过第三方转发该调用。其目的是降低类之间的耦合度,提高模块的相对独立性。

六大设计原则之迪米特法则(LOD)

1、客户端不应该依赖它不需要的接口。
2、类间的依赖关系应该建立在最小的接口上。

注:该原则中的接口,是一个泛泛而言的接口,不仅仅指Java中的接口,还包括其中的抽象类。

六大设计原则之接口隔离原则(ISP)

1、上层模块不应该依赖底层模块,它们都应该依赖于抽象。
2、抽象不应该依赖于细节,细节应该依赖于抽象。

依赖倒置原则(DIP)

参考:

阿里云折扣快速入口




论文标准格式
1.2 GPS控制网的技术设计………2 1.2.1 概述………2 1.2.2作业依据………3 1.2.3 GPS控制网设计的一般原则………4 1.2.4 GPS控制网的图形设计………6 1.3 GPS测量的外业工作………9 1.3.1 GPS相对定位的作业模式………10 1.3.2 GPS卫星...

我的情况该如何考取IT证书?
微软认证开发工程师(Microsoft Certified Solution Developer)。此证书的获得者将有能力为微软的软件开发工具(数据库系统、应用程序设计软件等如MS SQL Server、Microsoft Visual Studio、Microsoft Transaction Server)建立基于分布式网络环境下的商业化应用。4、MCP 微软认证专家(Microsoft Certified Professional...

笔记本一键还原是时候突然断电·现在开机进不去系统·怎么办?_百度知 ...
这种情况,建议使用clean system自动dll文件扫描、删除工具,这个工具的下载网址是 ozemail..au\/kevsol\/...把在系统内存中暂存的数据保存到磁盘中,通常在你即将完成一项设计或创作出一幅作品 时防死机会十分有...如果它没有提供,在此建议使用norton 提供的uninstall deluxe,这是一个极好的工具,其最大优点是删除...

高分200求标准作业流程图
设计无法按时完成导致生产计划延误物料采购周期不够。(月生产计划的编制2.1计划部根据订单情况及主生产...成仓根据先进先出的原则,登记批号、机型、发何地,于发货实际之日期安排人员核查出货的机型、颜色、...IQC record the < < IQC sort from > >,distribute to sort department ,and put “sol” label...

怎样给简谱配电子琴和弦
方法一:第一步:是分析旋律,有哪些能用和弦,考虑和声节奏(就是一个和弦覆盖半小节,一小节还是怎么的),全部写出来。第二步:考虑和声进行逻辑,把之前可能可以用的功能关系,或者其他什么的吧能用的挑出来来,第三步:考虑声部连接就完成。方法二:1、可以采取每一小节的音阶小数服从多数的原则来配...

管理信息系统课程设计
编程语言:SOL 数据库:Access2003 B 硬件环境: 有高性能的电子计算机、大容量的存贮装置,个人电脑(终端)以及联结起来的网线等,组成信息资源共享的计算机网络,有共享的打印机,扫描仪等等 (3)系统设计原则: 1) 系统运行安全可靠,稳定性好; 2) 系统的可管理性和可维护性好; 3) 系统输入界面友好,操作简便易行,...

下面哪个是商用课程管理系统软件
软件环境: 用户端:Windows2000,Windows2003,Windows XP 服务器端:WindowsNT\/Windows2000及以上操作系统编程语言:SOL 数据库:Access2003 B 硬件环境:有高性能的电子计算机、大容量的存贮装置,个人电脑(终端)以及联结起来的网线等,组成信息资源共享的计算机网络,有共享的打印机,扫描仪等等(3)系统设计原则: 1) 系统运行...

管理信息系统课程设计
编程语言:SOL 数据库:Access2003B 硬件环境:有高性能的电子计算机、大容量的存贮装置,个人电脑(终端)以及联结起来的网线等,组成信息资源共享的计算机网络,有共享的打印机,扫描仪等等(3)系统设计原则:1) 系统运行安全可靠,稳定性好;2) 系统的可管理性和可维护性好;3) 系统输入界面友好,操作简便易行,尽量减少用户...

什么是和弦铃声啊
1。大三和弦:根音与三音是大三度,三音与五音是小三度,用根音的大写英文字母音名来表示,如DO,MI,SOL和弦用C表示,FA,LA,DO和弦用F表示,降MI,SOL,降SI就用Eb表示,升FA,升LA,升DOL用F#表示。 2。小三和弦:根音与三音是小三度,三音与五音是大三度,用根音的大写英文字母音名加上小写m表示,如RE,FA,...

django怎么调试代码(Django使用)
8、多级ifelse的两个简化技巧:1是直接用except处理;2是该半路return的直接return掉,这样做虽然不符合过程编程函数设计原则,但是代码相对简洁了很多。 9、Ubuntu生产环境下不能PrintUnicode中文,否则会导致error. 10、因为DJango的500机制和事务机制,所以Django的View层对异常处理代码的依赖比较弱。 11、modelform定义:没...

秭归县19694576152: SOLID原则是什么? -
牧聂奥义: 你指的是软件面向对象设计的5大原则么?S:单一责任,O:开放闭合,L:李氏替换,I:接口分离,D:依赖倒置.

秭归县19694576152: 设计模式是6大原则还是7大原则 -
牧聂奥义: 有很多OOP的原则,凑在一起,可能是6大,可能是7大,也可能“5大',例如比较著名的SOLID,就是5个原则的缩写.其实说到底,就是要减小代码的重复和冗余,使其便于理解和维护.

秭归县19694576152: 面向对象设计的6个设计原则最早谁提出的 -
牧聂奥义: Booch最先描述了面向对象的软件开发方法的基础问题.面向对象设计的六大基本原则: 1)开闭原则 2)里氏代换原则 3)依赖倒转原则 4)接口隔离原则 5)迪米特法则 6)合成/聚合复用原则

秭归县19694576152: 面向对象系统设计的设计原则有哪些 -
牧聂奥义: 甚至还有经验丰富的Java程序员没有听说过OOPS和SOLID设计原则,他们根本不知道设计原则的好处,也不知道如何依照这些原则来进行编程. 众所周知,Java编程最基本的原则就是要追求高内聚和低耦合的解决方案和代码模块设计.查看...

秭归县19694576152: 在进行机械设计时应遵循哪些基本原则? -
牧聂奥义: (1) 以市场需求为导向的原则---引导市场、适应市场 (2) 创造性原则--创新 (3) 标准化,系列化,通用化原则--降低工作量和成本 (4) 整体优化原则---最低的成本使其功能最大化 (5) 联系实际原则---从材料和工艺等要考虑可行性,如果设计出来做不出来=0 (6) 人机工程原则---尽可能的人性化

秭归县19694576152: 城市滨水景观设计应遵循有哪六大原则 -
牧聂奥义: 滨水景观的设应计考虑和校园建筑、师生交流、娱乐、休闲相匹配的滨水步道、观景台、小品建筑,采用干栏式建筑的形式,体现出浓浓的地域特征,提高了景观的公众可参与性.滨水区的绿化设计,在遵循这些原则的同时,要着重强调绿化植物的选择

秭归县19694576152: 厨房装修设计六大原则是哪些|?
牧聂奥义: 原则一:空间决定形式原则依据空间大小决定厨房形式厨房依据空间的大小,可分为I字型、L字型、凹字型与中岛型. I字型厨房直线式的结构简单明了,通常需要面积7平方米,长度为2米的空间.只要依照使用者的习惯将烹调设备由左至右或...

秭归县19694576152: 景观生态规划的原则 -
牧聂奥义: 按照 Forman 和 Gordon 的观点,景观设计工作是六大设计原理的合理应用,即形状、尺度、多样性、可视性、个性及地方特征( Forman,Godron,1986) .而景观规划有五个一般性的原则,即: 自然优先原则、持续性原则、针对性原则、多样...

秭归县19694576152: OA设计的六大原则是? -
牧聂奥义: 这六大原则是:1、实用性原则实用就是务实不务虚,就是注重解决实际问题,做精、做细核心功能,兼顾常用的辅助功能,实现快捷、方便地布署和使用,并节省投资,降低风险.有OA起来功能一堆,什么客户、人事、财务、资产、知识管...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网