- 博客(15)
- 收藏
- 关注
原创 设计模式分类(行为型模式)
行为型模式行为型模式的特点行为型模式的分类行为型模式的特点行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法与对象间职责的分配。行为型模式分为类行为模式和对象行为模式,前者采用继承机制来在类间分派行为,后者采用组合或聚合在对象间分配行为。由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为...
2020-03-22 21:43:34
413
原创 设计模式分类(结构型模式)
结构型模式结构型模式的特点结构型模式的作用结构型模式的分类结构型模式的特点结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。结构型模式的作用由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。结构型模式的分类代理(P...
2020-03-22 21:31:10
243
原创 设计模式分类(创建型模式)
创建型模式创建型模式的特点创建型模式的作用创建型模式的分类创建型模式的特点创建型模式的主要关注点是“怎样创建对象?”,它的主要特点是“将对象的创建与使用分离”创建型模式的作用这样可以降低系统的耦合度,使用者不需要关注对象的创建细节,对象的创建由相关的工厂来完成。就像我们去商场购买商品时,不需要知道商品是怎么生产出来一样,因为它们由专门的厂商生产。创建型模式的分类单例(Single...
2020-03-22 21:15:28
322
3
原创 7大设计原则(合成复用原则)
合成复用原则合成复用原则产生背景合成复用原则的定义合成复用原则的作用合成复用原则的实现方法合成复用原则产生背景合成复用原则的定义合成复用原则(Composite Reuse Principle,CRP)又叫组合/聚合复用原则(Composition/Aggregate Reuse Principle,CARP)。它要求在软件复用时,要尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用...
2020-03-22 11:04:47
318
原创 7大设计原则(迪米特法则)
迪米特法则迪米特法则产生背景迪米特法则的定义迪米特法则的作用正确使用迪米特法则的优点过度使用迪米特法则的缺点迪米特法则的实现方法迪米特法则产生背景迪米特法则(Law of Demeter,LoD)又叫作最少知识原则(Least Knowledge Principle,LKP),产生于 1987 年美国东北大学(Northeastern University)的一个名为迪米特(Demeter)...
2020-03-22 11:00:11
408
原创 7大设计原则(接口隔离原则)
接口隔离原则接口隔离原则产生背景接口隔离原则的定义接口隔离原则的作用遵循接口隔离原则的优点遵循接口隔离原则的缺点接口隔离原则和单一职责原则的区别接口隔离原则的实现方法接口隔离原则产生背景2002 年罗伯特·C.马丁给“接口隔离原则”的定义是:客户端不应该被迫依赖于它不使用的方法(Clients should not be forced to depend on methods they do...
2020-03-22 10:52:49
453
原创 7大设计原则(单一职责原则)
单一职责原则单一职责原则产生背景单一职责原则的定义单一职责原则的作用遵循单一职责原则的优点不遵循单一职责原则的缺点开闭原则的实现方法单一职责原则产生背景单一职责原则(Single Responsibility Principle,SRP)又称单一功能原则,由罗伯特·C.马丁(Robert C. Martin)于《敏捷软件开发:原则、模式和实践》一书中提出的。单一职责原则的定义这里的职责...
2020-03-22 10:43:20
244
原创 7个设计原则(依赖倒置原则)
依赖倒置原则依赖倒置原则产生背景依赖倒置原则的定义依赖倒置原则的作用依赖倒置原则的实现方法依赖倒置原则产生背景依赖倒置原则(Dependence Inversion Principle,DIP)是 Object Mentor 公司总裁罗伯特·马丁(Robert C.Martin)于 1996 年在 C++ Report 上发表的文章。依赖倒置原则的原始定义为:高层模块不应该依赖低层模块,两...
2020-03-22 10:34:15
257
原创 7大设计原则(里氏替换原则)
里氏替换原则里氏替换原则产生背景里氏替换原则的定义里氏替换原则的作用里氏替换原则的实现方法里氏替换原则产生背景里氏替换原则(Liskov Substitution Principle,LSP)由麻省理工学院计算机科学实验室的里斯科夫(Liskov)女士在 1987 年的“面向对象技术的高峰会议”(OOPSLA)上发表的一篇文章《数据抽象和层次》(Data Abstraction and Hi...
2020-03-21 18:50:02
265
原创 7大设计原则(开闭原则)
开闭原则开闭原则产生背景开闭原则的定义开闭原则的作用开闭原则的实现方法开闭原则产生背景开闭原则(Open Closed Principle,OCP)由勃兰特·梅耶(Bertrand Meyer)提出,他在 1988 年的著作《面向对象软件构造》(Object Oriented Software Construction)中提出:软件实体应当对扩展开放,对修改关闭(Software entit...
2020-03-21 18:31:39
603
原创 软件设计模式总述
设计模式软件设计模式概述学习设计模式的意义23种设计模式分类根据目的分类根据作用范围分类:合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入...
2020-03-21 17:53:42
398
原创 npm安装慢?使用淘宝镜像!
npm安装慢?使用淘宝镜像!基于node.js,利用淘宝npm镜像安装相关依赖。由于国内使用npm会很慢,这里推荐使用淘宝NPM镜像(http://npm.taobao.org/):$ npm install -g cnpm --registry=https://registry.npm.taobao.org完成之后,我们就可以用cnpm代替npm来安装依赖包了:$ cnpm install -g
2017-10-06 10:41:35
664
原创 多线程知识点总结
多线程知识点总结1、什么是线程 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。2、如何在Java中实现线程 有两种方式。java.lang.Thread 类的实例就是一个线程但是它需要调用java.
2017-03-15 16:56:13
324
原创 Servlet知识点总结
Servlet知识点总结1、Servlet生命周期 主要分为以下三个阶段: 初始化阶段 —— 调用init()方法 响应阶段 ——— 调用service()方法 终止阶段 ——— 调用destroy()方法 init(): 在Servlet整个生命周期中,仅在装载(实例化)时执行一次。 在Servlet容器装载Servlet时执行
2017-03-15 15:51:43
365
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人