老师,您工作中设计模式用的多吗,那在写代码的过程中,是如何想到要用设计模式的,感觉看了那23种设计模式,很快就忘了

来源:7-2 明明该抛出自定义的异常,怎么还报500?

奶茶三兄弟d

2020-11-04

老师,您工作中设计模式用的多吗,那在写代码的过程中,是如何想到要用设计模式的,感觉看了那23种设计模式,很快就忘了,适用场景也分不清

写回答

1回答

张勤一

2020-11-06

奶茶三兄弟你好:

    怎么说呢,说出来你可能不信,但是,设计模式已经是“上个世纪”的产物了,也许你会说,不对呀,Spring 里面用到了大量的设计模式呀!

    确实是这样,我们所使用、见到的很多框架,都有使用大量的设计模式,例如 Spring 中使用了工厂、单例、策略、模板、观察者等等设计模式。但是,你要知道,Spring 是一个框架,你写的可能只是业务代码,业务代码讲究的是什么?总结下来有三点:

    (1)快速开发、快速上线,也就是前几年常说的“敏捷开发”,既然要快,哪还有那么多时间去考虑设计呢?

    (2)业务开发代码能让别人看懂已经很难得了,那里面充斥着大量的 if、else、for 等等“面向过程”的业务逻辑,这不是开发人员的水平受限,确实是业务就是流程,你想想你用美团点外卖,你的一系列操作不就是一个流程吗?(或者说是一个有限状态机)

    (3)业务代码中可能会有微乎其微的设计模式,而这些设计模式,我个人认为是可有可无的,毕竟用处不大,也就是复用性不强

    所以,综合下来,我的观念就是“设计模式无用”!当然,面试之前,你要简单去看看,背一背,因为面试都是套路,工作都很简单!


    我是勤一,致力于将这门课程的问答区打造为 Java 知识体系知识库,Java 知识体系 BBS!共同建造、维护这门课程,我需要每一个你!

4
0

Java实操避坑指南 SpringBoot/MySQL/Redis错误详解

掌握业务开发中各种类型的坑,,Java web开发领域通用

466 学习 · 204 问题

查看课程