0
点赞
收藏
分享

微信扫一扫

【设计模式】思考-设计模式有什么用?

一般开始学习一个新的知识前,我会思考为什么要学,他对于我的工作和生活有什么帮助?

对于设计模式,主要是为了应对代码难以维护的问题。比如结构混乱,复用性太低,或者一个新需求需要改很多旧代码。

那么,什么是好的软件设计?

高内聚,低耦合

好维护,好复用

什么是垃圾的设计?

  • 新需求需要改的地方很多,甚至要重写。
  • 改一个地方发现牵一发而动全身,根本不敢改。
  • 全是if else ,要逐步去加判断。
  • 让调用者去关心实现逻辑。也就是我用一个方法或者类,还要把这个类理解一遍。

总体的思想:

抽象、复用、单一职责。

其实学习设计模式很简单,但是用好它很难。什么时候该用什么样的模式,是否滥用了,是否让我的维护越变越难了?

对于这样的问题,我是这样看待的:

软件设计复杂性的根本问题:需求变化。

首先要了解产品的走向,简要分析下这个需求可能会怎么变。然后尽可能地增加复用性。

然后开始思考设计模式。

最后回想,这样是变简单了,还是变复杂了?

比如一个很简单的功能,统计某个接口请求次数。

如果以后基本不可能改了,那就直接一个方法就完了,不用想太多。

如果感觉以后可能要多个接口,那就考虑一下设计模式,以后增加接口不用改这一版的代码。

如果感觉以后要做统计分析,表的设计也要优化一下。

如果感觉这个量很大很大,是不是要分一下表。

总结

最后,凡事都有度,别过于纠结于模式,核心是为了更快地应对需求的变化。

我们从一味图快中走出来,能抽象则抽象,能复用则复用,都是为了以后改起来更方便。

如果你还有一颗热爱编程的心,不要停止学习,如果一直图快,你的技术不会进步的,也就不可能跳出这个水平圈,就会一直在还技术债,最后感觉做不下去了。

学习不会短期内提高你的工资,甚至会让你更累,但是会为你的未来种下一颗种子,总有一天会发芽的。

当你停下来休息的时候,不要忘记别人还在奔跑!




举报

相关推荐

0 条评论