Welcome everyone

设计模式 概念篇

设计模式 汪明鑫 67浏览 2评论

接口和API

一般而言,在提到某个类的接口时,多指该类所持有的方法的集合,也可以当作API(application programming interface)。

但在java中,也把用interface修饰的称为接口。

 

简单回顾UML

UML     Unified Modeling Language  统一建模语言

UML表现各种设计模式中类和接口的关系

java的字段  —–》 UML的属性

java的方法  —–》 UML的操作

 

继承

extend

 

 

实现

implements

 

聚合

 

class Color{
    
}

class Fruit{
      Color color;
}

class Basket{
      List<Fruit> fruits;
}

 

将这种持有的关系称为聚合(aggregation)。

只要一个类中持有另一个类的实例,无论是一个还是多个,就是聚合关系。

 

 

 

UML中最常用的就是类图和时序图

 

 

一个例子:

 

 

设计模式

目的:为了软件将来有更好的复用性、扩展性、维护性、稳定性等

重要性:
1,新的功能被提出。
2,负责项目的老程序员都离职了,新来的程序员接手,如果项目本身设计模式用的好,则代码可读性、维护性强。
3,设计模式面试中会问到,在很多开源框架和日常工作都会用到。
4,学习设计模式可以提升自己的编码能力和设计思想。

如何更好的实现低耦合、高内聚
增加代码的可读性,方便其他人阅读
设计模式是面向对象分析和设计的关键

 

设计模式不局限于某一种语言

 

设计模式七大原则

1, 单一职责原则
2, 接口隔离原则
3,依赖倒转原则
4,里氏替换原则
5,开闭原则
6,迪米特法则
7,合成复用原则

 

是23种设计模式所依据的原则

 

设计模式分类

创建型设计模式:

工厂方法

抽象工厂

建造者

原型

单例

 

结构型设计模式:

适配器

桥接

组和

装饰

外观

享元

代理

 

行为型设计模式:

解释器

模版方法

责任链

命令

迭代器

中介者

备忘录

观察者

状态

策略

访问者

 

设计模式阶段

第一阶段:萌新,别管什么设计模式,老夫就是一顿ctrl c + ctrl v

第二阶段:听说过设计模式,也感觉到自己写的代码烂,有了自我意识

第三阶段:初次学习了一部分设计模式,迷茫期,不知道什么时候用,怎么用,不敢在项目中用

第四阶段:试错阶段,开始刻意使用设计模式,一开始越用越烂,但慢慢有了一定编码经验开始尝到设计模式的甜头

第五阶段:开始看开源代码,研究别人怎么使用设计模式

第六阶段:老司机,对设计模式的使用已经相当熟练

 

我目前刚刚到第三阶段,情况所迫,很多代码确实看不懂,有必要学一波

 

结语

后面会继续学习和练习UML的使用,以及七大原则和23种设计模式的学习。

之前看过一点设计模式,忘得差不多了,写代码也没有想过去刻意使用设计模式。

但痛点是项目的一些代码还是看不懂,开源框架的源码看不懂,因此重新系统的学习下设计模式是很有必要的。

 

 

转载请注明:汪明鑫的个人博客 » 设计模式 概念篇

喜欢 (0)

说点什么

2 评论 在 "设计模式 概念篇"

提醒
avatar
排序:   最新 | 最旧 | 得票最多
Askon
游客

博主的评论有用什么插件吗

wpDiscuz