首页 > 代码库 > 对设计模式的理解

对设计模式的理解

学习java设计模式有段时间了,一直在阅读学习《深入浅出设计模式》,本文就简单说下本人对于设计模式的浅显理解。

我理解的设计模式是一些框架,经过前辈们的实践与时间的考验沉淀下来的一种代码设计框架。在项目开始之前,良好的软件架构与代码设计对后面的项目实现开发效率的促进,维护成本的提高都有很大的益处。一个未经考虑的代码设计在后期的维护过程中会增加大量的成本,工程师需要大量的时间去理解源码的结构,修补因为解耦性差导致复杂度超高的bug。在前辈们的努力下,无数经过时间检验的优秀软件架构产生了,而且很多代码的设计是类似的甚至是一样的。这些优秀的架构经过进一步的抽象,提炼出的设计模式很容易被后辈们学习进步,如此推动代码设计的发展。

所以说设计模式并不只是书中那二十三种,优秀的设计模式每天都在沉淀,只要是能给解决问题提供好的方式(非具体方法)就是好的设计。设计模式同时也是一种思想,稳定、有效、易于维护是它的宗旨,虽然设计模式是对重复出现的要解决的问题的一种解决方案,但是能放之四海而皆准的设计是没有的,不同的情景适用不同的设计,而很多时候我们也可以自己在前辈们的设计模式基础上就行修改扩展以适用于我们自己要解决的问题。

说了这么多虚的,下面简单总结下现在大家用的较多的又比较容易理解的设计模式类型。

1、创建型设计模式

这种模式顾名思义,是把创建对象、实例化这一过程抽象成一个框架,它们做的事就是帮助开发者理解、管理各种相似的事物、问题。它把创建对象的过程整合成一种规范,通常不会直接让开发者使用基础的代码创建凌乱的对象,而是在创建的过程中通过表意的代码创建对象。这些设计模式大多能够表现出一个对象在什么时候创建,谁创建,怎么创建等信息,最大程度帮助开发者理解代码意图,增加协作的便利性。这类设计模式一般是能让你的代码解耦性更强,更安全,维护难度降低。

对设计模式的理解