我为什么要学习设计模式?
毕业也有几年了,一直是做的java后端开发,在学校学的东西也基本换给了老师。工作内容只是对功能设计的具体内容进行实现即可。但是,做了两三年之后,发现也仅限这些内容了。感觉java也没啥内容,但是从前段时间有个功能优化,发现之前的代码结构必须要改动包括设计,但是发现不敢动,因为已经生产上使用了,最后只能对代码进行微调。但是结果并不理想,突然发现,最初的代码结构决定了你的功能的可靠性,扩展性,易维护性,原来java有很多东西要学,不只是CRUD。这也是为什么又要重新学一下java设计模式的原因。未来我会完整学习下设计模式,梳理出自己的理解,总结出一个专题,作为备忘,以便筛查和分享。
什么是设计模式?
什么是设计模式?我的理解就是,在软件设计中,为了解决一些常用问题场景的一些代码接口的最佳实践。遵循这些实践,会增加代码的扩展性,通用性,易维护性,减少代码的维护成本。
设计模式的分类?
设计模式分为三种类型,共23种
- 创建型模式:单例模式、抽象工厂模式、原型模式、建造者模式、工厂模式。
- 结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享
元模式、代理模式。 - 行为型模式:模版方法模式、命令模式、访问者模式、迭代器模式、观察者
模式、中介者模式、备忘录模式、解释器模式(Interpreter模式)、状态模 式、策略模式、职责链模式(责任链模式)。