按照目的来分,设计模式可以分为创建型模式、结构型模式和行为型模式。
创建型模式用来处理对象的创建过程;结构型模式用来处理类或者对象的组合;行为型模式用来对类或对象怎样交互和怎样分配职责进行描述。
创建型模式用来处理对象的创建过程,主要包含以下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+区块链技术开发的案例