前言
本文将结合实际谈谈23种设计模式,每种设计模式涉及
定义:抽象化的定义与通俗的描述,尽量说明清楚其含义与应用场景
示例:如果项目中有使用过该模式,则会给出项目中的代码,否则会给出尽可能简单好理解的java代码
Android:该设计模式在Android源码框架中哪些地方有使用到
重构:项目中是否存在可以用该模式进行重构的地方,如果已经进行过重构会给出重构前与重构后的代码,没有就给出思路
用这种方式进行介绍设计模式,旨在结合每天都在接触的内容来更好地理解设计模式,拉近与设计模式的距离,同时在实际项目中,思考可以应用的重构手段与设计模式,既能保证写出复用性与可靠性更高的代码,也是对如何利用重构与设计模式进行优雅编程的最佳实践与总结。
同时一次性以这种方式介绍23种设计模式,也是出于既然要使用一个模式,那么就应该要先知道这么一个模式的想法,当然也可以在平常开发中自我总结,毕竟设计模式很大程度上也是对经验的归纳,但是有四人帮等巨人托着你上去,又何必自己再摸黑造梯子。
重构不是本章的重点,因为这也是一个非常大的话题,这边只讨论实际项目中是否有存在一些能用设计模式进行改善的地方。
关于重构,这边也有写了一篇博文 重构:改善既有代码的设计 ,基本列举了《重构:改善既有代码的设计》中的各项要点,后续还会继续将《重构》中的手法与设计模式应用到实际项目中,有所总结之后会再写几篇实际应用的博文。
简介
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,也是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现实中都有相应的原理来与之对应,每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是它能被广泛应用的原因。