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

腾云网建站/厦门网页搜索排名提升

腾云网建站,厦门网页搜索排名提升,商城网站的seo优化改怎么做,在手机上制作网页软件为何要学习设计模式、设计模式的概念以及总概【华星详谈】设计原则七大设计原则为何要学习设计模式?什么是设计模式呢?23种设计模式1. 创建型2. 结构型3. 行为型设计模式在spring 中的应用书籍推荐设计原则 我们在学习设计模式之前,一定需要先…

为何要学习设计模式、设计模式的概念以及总概【华星详谈】

  • 设计原则
    • 七大设计原则
  • 为何要学习设计模式?
  • 什么是设计模式呢?
  • 23种设计模式
    • 1. 创建型
    • 2. 结构型
    • 3. 行为型
  • 设计模式在spring 中的应用
  • 书籍推荐

设计原则

我们在学习设计模式之前,一定需要先了解设计原则,那么什么是设计原则呢?

设计原则是指导我们代码设计的一些经验总结,对于某些场景下,是否应该应用某种设计模式,具有指导意义。比如,“开闭原则”是很多设计模式(策略、模板等)的指导原则。

七大设计原则

设计原则设计原则
开闭原则对扩展开放,对修改关闭。
依赖倒置原则通过抽象使各个类或者模块不相互影响,实现松耦合。
单一职责原则一个类、接口、方法只做一件事。
接口隔离原则尽量保证接口的纯洁性,客户端不应该依赖不需要的接口。
迪米特法则又叫最少知道原则,一个类对其所依赖的类知道得越少越好。
里氏替换原则子类可以扩展父类的功能但不能改变父类原有的功能。
合成复用原则尽量使用对象组合、聚合,而不使用继承关系达到代码复用的目的。

为何要学习设计模式?

不用设计模式并非不可以,但是用好设计模式能帮助我们更好地解决实际问题,设计模式最重要的是解耦。设计模式天天都在用,但自己却无感知。我们把设计模式作为一个专题,主要是学习设计模式是如何总结经验的,把经验为自己所用。学设计模式也是锻炼将业务需求转换技术实现的一种非常有效的方式。

什么是设计模式呢?

设计模式是针对软件开发中经常遇到的一些设计问题,总结出来的一套解决方案或者设计思路。大部分设计模式要解决的都是代码的可扩展性问题。设计模式相对于设计原则来说,没有那么抽象,而且大部分都不难理解,代码实现也并不复杂。主要是需要了解它们都能解决哪些问题,掌握典型的应用场景,并且懂得不过度应用。

23种设计模式

经典的设计模式有 23 种。随着编程语言的演进,一些设计模式(比如Singleton)也随之过时,甚至成了反模式,一些则被内置在编程语言中(比如Iterator),另外还有一些新的模式诞生(比如 Monostate)。它们又可以分为三大类:创建型、结构型、行为型。对于这 23种设计模式的学习,我们要有侧重点,因为有些模式是比较常用的,有些模式是很少被用到的。

23种设计模式

1. 创建型

常用的有:单例模式、工厂模式(工厂方法和抽象工厂)、建造者(构建器)模式。

不常用的有:原型模式。
在这里插入图片描述

2. 结构型

常用的有:代理模式、桥接模式、装饰者模式、适配器模式。
在这里插入图片描述

3. 行为型

常用的有:观察者模式、模板模式、策略模式、职责链模式、迭代器模式、状态模式。

不常用的有:访问者模式、备忘录模式、命令模式、解释器模式、中介模式。
在这里插入图片描述
在这里插入图片描述

设计模式在spring 中的应用

Spring 就是一个把设计模式用得淋漓尽致的经典框架,其实从类的命名就能看出来,我
来一一列举:

设计模式名称举例
工厂模式BeanFactory
装饰器模式BeanWrapper
代理模式AopProxy
委派模式DispatcherServlet
策略模式HandlerMapping
适配器模式HandlerAdapter
模板模式JdbcTemplate
观察者模式ContextLoaderListener
**需要特别声明的是,设计模式从来都不是单个设计模式独立使用的。在实际应用中,通
常是多个设计模式混合使用,你中有我,我中有你。**

书籍推荐

1、维基百科:http://en.wikipedia.org/wiki/Design_Patterns#Patterns_by_Type

2、推荐书籍《大话设计模式》

3、推荐书籍《Head First设计模式》

4、推荐书籍《设计模式-可复用面向对象软件的基础》

5、推荐书籍《Effective Java》

http://www.lbrq.cn/news/834607.html

相关文章:

  • 自己免费做网站有什么用/seo排名优化服务
  • 做网站用java还是php/北京网络营销推广外包
  • 网站推广的内涵/什么叫优化
  • discuz网站编码/上海疫情突然消失的原因
  • 网站设计开发软件网页美化工具/2021十大网络舆情案例
  • 中国核建平台/seo网页推广
  • 电商网站主题/营销网站定制公司
  • 濮阳h5建站/网站推广的工作内容
  • 独立ip做网站/招聘网站排名
  • wordpress怎么在导航栏添加搜索框/seo推广费用需要多少
  • 网站的线下推广怎么做的/推广哪个网站好
  • 策划书的网站/网络推广有哪些渠道
  • 学校网站建设策划/长沙seo运营
  • 动态网站建设实训参考文献/seo排名怎样
  • 网站建设征求意见表/网络营销有哪些模式
  • 企业网站怎么做两种语言/网络推广的工作内容
  • 网上买保险网站/网站百度收录突然消失了
  • 外贸网站建设如何做呢/5g网络优化培训
  • 网站运营模式有哪些/成都网站建设制作公司
  • 摄影网站建设内容/seo站内优化技巧
  • 网站开发实现顺序/百度优化seo
  • 广州网站建设推广公司哪家好/今日新闻网
  • 网站关键词怎么布局/网站免费下载安装
  • web网站测试/苏州百度推广分公司电话
  • wordpress会员网站/商务软文写作300
  • 团购汽车最便宜的网站建设/2021最新免费的推广引流软件
  • 备案网站资料上传教程/百度搜索量统计
  • 如何做移动支付网站/沈阳头条今日头条新闻最新消息
  • 网站能看出建设时间吗/微信小程序怎么制作自己的程序
  • windows.net做网站/今日热点新闻头条国内
  • 习题4.1 输出3个人的顺序
  • LLM(Large Language Model)大规模语言模型浅析
  • 深入理解Java中的Map.Entry接口
  • 网络安全威胁下的企业困境与破局技术实践
  • 2020717零碎写写
  • 了解一下Unity Object的内存管理机制