当前位置: 首页 > news >正文

邢台网站建设服务周到10000个免费货源网站

邢台网站建设服务周到,10000个免费货源网站,收费网站怎么制作,校园网站建设方向基本认知 什么是模式 在一定环境中解决一些问题的方案(通俗来说:特定环境中用固定的套路解决问题) 什么是设计模式 设计模式是一套反复被人使用,多数人知晓的,经过分类编目的代码设计经验的总结 设计模式最终的目…

基本认知

什么是模式

在一定环境中解决一些问题的方案(通俗来说:特定环境中用固定的套路解决问题)

什么是设计模式

设计模式是一套反复被人使用,多数人知晓的,经过分类编目的代码设计经验的总结

设计模式最终的目的是为了应对变化,提高代码的复用性

  1. 客户需求的变化

  2. 技术平台的变化

  3. 开发团队的变化

  4. 市场需求的变化

设计模式分类

创建型模式

通常和对象创建有关,涉及到对象实例化的方式(5种)

  • 工厂模式
  • 抽象工厂模式
  • 建造者模式
  • 原型模式
  • 单例模式

结构型模式

描述的是如何组合类和对象获得更大的结构(7种)

  • 代理模式
  • 装饰者模式
  • 适配器模式
  • 桥接模式
  • 组合模式
  • 外观模式
  • 享元模式

行为型模式

描述类和对象的交互以及分配职责(11种)

  • 模板方法模式
  • 命令模式
  • 责任链模式
  • 策略模式
  • 中介者模式
  • 观察者模式
  • 备忘录模式
  • 访问者模式
  • 状态模式
  • 解释器模式
  • 迭代器模式

面向对象的设计原则

依赖倒置原则 (DIP)

DIP:Dependence Inversion Principle

  • 高层(稳定)不依赖底层(变化),两者依赖抽象(稳定)
  • 抽象(稳定)不依赖细节(变化),细节依赖抽象(稳定)

开放封闭原则 (OCP)

OCP:Open For Extension, Closed For Modification Principle

  • 对扩展开放,对更改封闭
  • 类模块可扩展,但不可修改

单一职责原则 (SRP)

SRP:Single Responsibility Principle

  • 一个类应该仅有一个引起它变化的原因
  • 变化的方向隐含类的责任

里氏替换原则 (LSP)

LSP:Liskov Subsitution Principle

  • 子类必须能够替换它们的基类(尽量少多态)
  • 继承表达类型抽象

接口隔离原则 (ISP)

ISP:Interface Segregation Principle

  • 不应该强迫客户程序依赖他们不用的方法(如果某个功能或方法不是必需的,那么依赖于它只会增加不必要的复杂性和耦合度;同时,只需要暴露必要的接口和方法,隐藏不必要的内部细节)
  • 接口应该小而完备(一个设计良好的接口应该只包含客户程序所需的方法)
  • 一个接口应该只提供一种对外功能

优先组合不是继承原则 (CARP)

CARP:Composite/Aggregate Reuse Principle

  • 类的继承通常是"白箱复用",对象组合通常是"黑箱复用"
  • 继承在一定程度上破坏封装性,子类和父类耦合度高(尽量少继承)

迪米特法则 (LOD)

LOD:Law of Demeter

  • 对象应当对其他对象尽可能少的了解(宁可通过 A ⇔ B ⇔ C,也不要直接 A ⇔ C)
  • 各个模块之间相互调用时,通常会提供一个统一的接口来实现

类图

基本认识

  • 类图显示了模型的静态结构,特别是模型中存在的类、类内部结构以及它们与其他类的关系
  • 类图不显示暂时性的信息
  • 类图是面向对象建模的主要组成部分
  • 它既用于应用程序的系统分类的一般概念建模,也用于详细建模,将模型转换为编程代码

类图作用

描述类本身结构以及类与类之间一些关系

类图的元素

在类图中一共包含了以下几种模型元素,分别是:类(Class)、接口(Interface)、依赖关系(Dependecy)、泛化关系(Generalization)、关联关系(Association)、聚合关系(Aggregation)、组合关系(Composition)和实现关系(Realization)

类图中元素的组成

C++ 中一个类的类图组成如下:

在这里插入图片描述

+: 公有属性
-: 私有属性
#: 保护属性name: string	成员名: 类型
eat(): void		成员函数: 返回值类型斜体: 抽象类或者纯虚函数

类中类图的关系

  • 依赖关系(Dependency)
依赖关系是指:两个或多个类之间依存关系,如植物类依赖于土壤类。依赖关系还可以再细分为5种类型,分别是- 绑定依赖(Binding)
- 实现依赖(Realization)
- 使用依赖(Usage)
- 抽象依赖(Abstraction)
- 授权依赖(Permission)依赖关系用虚线箭头来表示,箭头指向为依赖的方向
  • 泛化关系(Generalization)
简单的讲就是类之间的继承关系用空心三角形和实线来表示,箭头指向为父类
  • 关联关系(Association)
关联关系是类之间一种相互影响的关系,影响的方向就是关联的方向用实线箭头表示
  • 聚合关系(Aggregation)
聚合关系是类之间的一种较弱的耦合关系,如一个字符串数组和一个字符串就是一种聚合关系用空心的菱形和实线箭头来表示,箭头方向为被聚合的类
  • 组合关系(Composition)
组合关系是类之间一种整体与部分之间的关系,如一只青蛙有四条腿,青蛙类与青蛙腿类之间的关系就是组合关系实心的菱形和实线箭头来表示,箭头指向为被组合的类
  • 实现关系(Realization)
一般来讲,实现关系是针对类与接口之间的关系而言的空心三角形和虚线表示
http://www.hkea.cn/news/792071/

相关文章:

  • 设计师培训招生视频黑帽seo联系方式
  • 做网上贸易哪个网站好西宁网站seo
  • 电子烟网站建设杯子软文营销300字
  • 广州企业网站制作怎么做营销推广
  • 网站建设服务器在香港郑州网站建设专业乐云seo
  • 河北建设工程交易信息网海口关键词优化报价
  • 全国网站建设公司有多少家微信朋友圈广告投放收费标准
  • 免费做网站公司黑帽seo排名技术
  • apk连接wordpress上海seo
  • 企业建网站租用服务器好还是买一个好石家庄网站关键词推广
  • wordpress文件解析外贸网站优化
  • 建设工程竣工备案网站百度保障中心人工电话
  • 韶关城乡建设部网站首页营销型网站建设策划书
  • 建设银行手机银行下载官方网站谷歌浏览器网页版入口在哪里
  • 网站建设 好域名注册信息
  • 公众号微网站建设认证哪个推广网站好
  • 爬取1024上传到wordpress蔡甸seo排名公司
  • 流感吃什么药更好seo的方法
  • 营销型网站建设市场seo黑帽技术有哪些
  • 扬中做网站的公司seo虚拟外链
  • 永川集团网站建设免费网站seo诊断
  • 国外 上海网站建设网络营销推广方式案例
  • 24手表网站网络技术推广服务
  • 鞍山网站制作推广游戏推广员判几年
  • 360如何做网站优化网页设计制作软件
  • 金华网站建设电话电商运营主要负责什么
  • 百度的官方网站游戏推广工作好做吗
  • 著名的深圳网站建设网页快照
  • 政务网站建设要求快速排名软件哪个好
  • 自己网站怎么做优化色盲和色弱的区别