java中常用到得设计模式有哪几种?

Python018

java中常用到得设计模式有哪几种?,第1张

一共23种设计模式

按照目的来分,设计模式可以分为创建型模式、结构型模式和行为型模式。

创建型模式用来处理对象的创建过程;结构型模式用来处理类或者对象的组合;行为型模式用来对类或对象怎样交互和怎样分配职责进行描述。

创建型模式用来处理对象的创建过程,主要包含以下5种设计模式:

 工厂方法模式(Factory Method Pattern)

 抽象工厂模式(Abstract Factory Pattern)

 建造者模式(Builder Pattern)

 原型模式(Prototype Pattern)

 单例模式(Singleton Pattern)

结构型模式用来处理类或者对象的组合,主要包含以下7种设计模式:

 适配器模式(Adapter Pattern)

 桥接模式(Bridge Pattern)

 组合模式(Composite Pattern)

 装饰者模式(Decorator Pattern)

 外观模式(Facade Pattern)

 享元模式(Flyweight Pattern)

 代理模式(Proxy Pattern)

行为型模式用来对类或对象怎样交互和怎样分配职责进行描述,主要包含以下11种设计模式:

 责任链模式(Chain of Responsibility Pattern)

 命令模式(Command Pattern)

 解释器模式(Interpreter Pattern)

 迭代器模式(Iterator Pattern)

 中介者模式(Mediator Pattern)

 备忘录模式(Memento Pattern)

 观察者模式(Observer Pattern)

 状态模式(State Pattern)

 策略模式(Strategy Pattern)

 模板方法模式(Template Method Pattern)

 访问者模式(Visitor Pattern)

推荐你一本好书:《软件秘笈:设计模式那点事》,里面讲解的23中设计模式例子很生动,容易理解,还有JDK中设计模式应用情况,看了收获挺大的!百度里面搜“设计模式”,第一条中设计模式百度百科中就有首推该图书,浏览量在20几万以上的,不会错的。好东西大家一起分享!

祝你早日学会设计模式!

总体来说设计模式分为三大类:创建型模式,结构型模式,行为型模式

1、创建型模式,共五种:

工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

2、结构型模式,共七种:

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

3、行为型模式,共十一种:

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

Java视频教程:

第一阶段内容Java设计和编程基础(OOD和OOP)

主要内容涉及技术知识点课时总长

Java语言基础

Java语言、Java环境变量、变量、运算符、表达式、分支语句、循环语句、数组,数组应用,行业规范。双色球抽奖程序实现。

5天

Java面向对象

类、对象、属性、方法、构造、封装、继承、多态、重写、重载、访问权限控制符、this和super、static、单例设计模式、final、抽象类和接口、模板设计模式、内部类

5天

JavaSE核心类库

Java核心类、Java字符串、日期处理、包装类、集合、数据结构、异常和异常处理、JavaIO、多线程编程、线程同步机制、并发包、JAVA网络编程、Java泛型、Java反射机制。

10天

Java设计

设计原则、设计模式、常见算法、Java8/9新特性、Maven使用、SVN版本管理、Lamda表达式、Git、IDEA工具

2天

第二阶段内容数据库技术和Web前端技术(H5/JS)

主要内容涉及技术知识点课时总长

Oracle数据库开发

SQL语句、SQL语句原理、SQL语句优化、表、视图、序列、索引、Oracle数据字典、存储过程、函数、触发器、PL/SQL开发、数据库设计原则等

6天

JDBC

JDBC核心API、JDBC优化技术(缓存技术、批处理技术、dbcp、c3p0等数据库连接池)

2天

XML

XML语法、XML解析(SAX、DOM、Dom4j)

1天

Web前端基础(HTML5/CSS3/JS)

HTML5(H5)基本文档结构、链接、列表、表格、表单CSS基础语法、盒子模型、浮动布局、定位JavaScript语言基础、DOM编程、事件模型等。

HTML5画布、Web存储、地理定位、音频/视频、拖放、WebSocket技术等

CSS边框、背景、文本效果、字体、动画等

8天

Web前端高级

jQuery框架

JQuery、JQuery对象、元素选择器、DOM操作、属性操作、CSS操作、动画效果、JQuery插件等

2天

Web前端高级

Vue

Bootstrap

jQuery扩展插件

安装、使用、模板语法、条件、循环、事件处理、表单等

BootstrapCSS、布局组件、插件、编辑器

highcharts图表组件

jquery表单校验、弹框等插件

3天

第三阶段内容JavaWeb技术和主流框架

主要内容涉及技术知识点课时总长

JSP&Servlet

JSP语法、JSP标记、自定义标记、JSTL和EL表达式、JSP新特性、MVC设计模式、Servlet生命周期及Servlet服务器、Servlet过滤器和监听器、Tomcat配置和部署等

MySQL安装、使用、Java访问MySQL等

8天

AJAX框架

Ajax基础、XHR对象、Ajax设计模式、JSON技术、jQuery中Ajax函数等

2天

Spring

SpringIoc、Ioc注入技巧、对象高级装配(自动装配、模板装配、组件扫描特性、FactoryBean、对象生命周期)、SpringAOP原理、AspectJ、SpringJDBC支持、Spring事务及安全管理、SpringMVC、RESTful技术、Spring国际化SpringSecurity、ApacheShiro、Spring整合Shiro等

8天

SpringBoot

SpringCloud

Spring-BootServlet、过滤器、监听器、拦截器、启动加载、数据库连接、多数据源、动态数据源、事务、Spring-BootShiro权限管理、Spring-BootJDBC访问数据库、Spring-BootMyBatis访问数据库等

Spring-Cloud分布式配置管理、服务注册

5天

MyBatis

MyBatis映射基础,DQL映射,DML映射,结果集映射,高级动态SQL映射,SqlSession的使用,SprigMyBatis整合,MyBatis分页处理、关联查询映射等

2天

NoSQL

Redis原理、Redis命令、JavaRedisAPI、Redis集群和缓存

MongoDB原理、MongoDB命令、JavaMongoDBAPI

3天

Struts2&Hibernate

Struts2控制流程、Ognl、Action、Interceptor、Result、FreeMarker、Struts2标记库、Struts2扩展、Struts2应用、HibernateAPI、Hibernate实体映射技术、Hibernate关系映射技巧、HQL查询、Hibernate缓存技术、SSH整合

6天

第四阶段内容项目实战、企业解决方案

主要内容涉及技术知识点课时总长

企业项目

企业实战

解决方案

CRM/P2P系统开发实战

Linux企业级应用操作部署方案

企业项目研发流程、规范和常见架构方案

消息服务解决方案

搜索服务解决方案

负载均衡解决方案

企业常见业务解决方案

应用集群解决方案

数据库集群解决方案

安全服务解决方案

分布式服务解决方案

缓存服务解决方案

高并发、集群模式整合解决方案

Workflow工作流解决方案

15天

第五阶段内容就业冲刺课程

主要内容课时总长

技术串讲、企业面试题实战

3天

项目面试实战

2天

技术答疑、面试指导、就业推荐服务

无期限

第六阶段内容热点技术、案例、工具应用(免费赠送)

微信小程序/公众号开发,基于Java+微信API开发小程序和公众号

Java+区块链开发,基于Java+区块链技术开发的案例