设计模式--6大基本原则

2024-05-07 19:18
文章标签 设计模式 原则 基本

本文主要是介绍设计模式--6大基本原则,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.开放封闭(简称开闭)原则
一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。目的就是保证程序的扩展性好,易于维护和升级。
2.单一职责原则
对一个类而言,应该仅有一个引起它变化的原因。单一职责原则是实现高内聚低耦合的最好方法。
3.里氏代换原则
子类可以扩展父类的功能,但是不能改变父类原有的功能。–多态
4.依赖倒置原则
高层模块不应该依赖底层模块。
5.接口隔离原则
接口隔离原则(Interface Segregation Principle):用于恰当的划分角色和接口,具有两种含义:1、用户不应该依赖它不需要的接口;2、类间的依赖关系应该建立在最小的的接口上。
6.迪米特原则
类间解耦,弱耦合。不希望类与类之间建立直接的接触

这篇关于设计模式--6大基本原则的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/968158

相关文章

maven学习系列——(二)maven的安装和一些基本的配置

这一篇主要会总结maven在window上的安装,以及Eclipse安装maven插件。 会整理和贴出具体的安装步骤等! 配置大概会整理一下,方便自己查看和使用! Maven 的使用在Windows上使用比较多,一般的开发都是在Windows上;Linux上的使用相对比较少,不过会总结Windows和Linux系统两种安装方式。 首先会介绍在Windows和Eclipse安装Maven,L

二十、设计模式总结—后会有期 #和设计模式一起旅行#

告别 是为了下一次相遇,告别更是新的开始! 瞎扯 设计模式整了两个月了,看了一些书籍和一些博客,整体是完成了,但是还有一些模式没有总结出来,不过剩下的模式暂时不准备在更新了,剩下的也相对来说不是那么的重要! 在看设计模式的这段时间中,总是有一种感觉,看到其中的一个设计模式,有似曾相识的感觉,看完之后比较清晰了,也会想着在工作那些地方遇到了设计模式,还有就是自己在设计的时候也有一些意识,

十九、原型模式—通过复制生产实例 #和设计模式一起旅行#

拔一根猴毛,变出十万个孙悟空 故事背景 在java中,我们一般创建实例的时候可以使用了new 关键词指定类名来生成类的实例。例如: Preson p = new Person();或者Person p = Person.getInstance(); 但是是在实际开发过程中,有时候会有“不指定类名的前提下生成实例”的需求。这种情况下,就不能通过上面的这种方式生成实例! 除了上面

2、swift学习-创建基本的控件

与OC想比较而已,其实用swift创建一些基本控件的方法都是一样的,一些基本的属性都是大同小异,只是语法稍稍不同而已,对于刚刚由OC开始学习swift的可能有点不太习惯,但是没关系,多写多练自然而然就会顺手的。 一、用swift创建一个UILabel func createLabel() {         let label = UILabel (frame: CGRect

1、swift学习-字典的基本使用

1、创建一个字典          var dic:Dictionary<String,String> = ["三国演艺":"罗贯中","水浒传":"施耐庵","红楼梦":"曹雪芹","西游记":"吴承恩"]; 2、打印字典的值     println(dic);     结果如下图:      3、访问字典中某一个键值     var

iOS 环信3.2集成 (一)基本使用

前言 1、本教程对应环信即时聊天 iOS SDK V3.2.0 (2016-10-15) 2、请自行注册好环信APP_ID和APP_KEY 3、请自行下载好环信即时聊天SDK对应的版本(easemob.com/download”>iOS SDK V3.2.0) 一、集成环信SDK 1、导入SDK 下载SDK到本地,进行解压,包含以下几个文件。 如果你的项目中需要用到语音电话和语音

3.1 Activity的基本使用

一、基本使用 1、Activity的开启与关闭 开启一个Activity Intent intent = new Intent(MainActivity.this,Main2Activity.class);startActivity(intent); 关闭一个Activity finish(); 2、Activity之间数据传递 (1) 方法一 A 界面传值代码如下: I

iOS Masonry(约束)的基本使用

一、简介 Masonry是一个轻量级的布局框架 拥有自己的描述语法 采用更优雅的链式语法封装自动布局 简洁明了 并具有高可读性 而且同时支持 iOS 和 Max OS X。 Masonry支持的一些属性 //左侧@property (nonatomic, strong, readonly) MASConstraint *left;//上侧@property (nonatomic, st

2.12 Toast的基本使用

一、布局文件 1、新建一个布局文件,bg_toast.xml ,添加如下代码: <?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android"><!-- 设置透明背景色 --><solid android:color="#BADB66" /><!--

设计模式(一)-策略模式

策略模式:定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。 代码示例 每种类型的鸭子具有不同属性行为,我们把每种类型行为定义为接口,然后每种行为具体的类型就是实现这些接口的具体类。鸭子父类使用每种行为的接口类型来接收具体的行为类,然后调用具体行为的方法。需要更改某个具体鸭子的行为时,只需要更改注入的相关具体行为实现类 飞行行为 /***