答疑丨对于设计模式而言,场景到底有多重要?
李智慧
该思维导图由 AI 生成,仅供参考
今天是第二模块的最后一讲。在这一讲中,我们主要讲了软件的设计原理,今天,我将会针对这一模块中大家提出的普遍问题进行总结和答疑。并且,我在最后列了一个书单,这个书单里涉及到的书,可能会对你学习设计模式有一些帮助。让我们整理一下,再接着学习下一个模块的内容。
问题答疑
我们先来看一个同学提出的问题。
@山猫
如果项目初始就对 Button 按钮进行这么复杂的设计,那么这么项目后期的维护成本也是相当之高。
答:
我们这个模块是讲设计的,这些设计原则都是用来解决需求变更的问题的。如果你为需求变更而进行了设计,但是预期中的需求变更却从来没有发生过,那么你的设计就属于设计过度;如果已经发生了需求变更,但是你却没有用灵活的设计方法去应对,而是通过硬编码的方式在既有代码上打补丁,那么这就是设计不足。
因此,是否要使用各种设计原则和设计模式去设计一个非常灵活的程序,主要是看你的需求场景。如果你的场景就是需要灵活,就是要各种复用,应对各种变更,那么一开始就应该这样设计。如果你的场景根本不需要一个可复用的 Button,那么就不需要这样设计。
所以关键还是看场景。
但是场景也会变化,一开始不需要复用,但是后来又需要复用了,那么就需要在复用的第一个场景去重构代码,而不是等将来困难局面 hold 不住了再重构。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文总结了软件设计原则和设计模式的重要性,强调了在软件开发中写出清晰、简单的代码的重要性。作者指出,正确使用设计模式可以使代码维护变得简单,因为关系和边界更清晰,不需要在强耦合的代码中进行修改。文章还提到了一些经典的著作,如《敏捷软件开发》和《企业架构模式》,强调了良好的软件设计对于敏捷开发和项目管理的重要性。作者还分享了自己的经验,强调了写出漂亮代码的重要性。整体而言,本文强调了良好的软件设计对于软件开发的重要性,以及如何写出好的代码。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《后端技术面试 38 讲》,新⼈⾸单¥59
《后端技术面试 38 讲》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(9)
- 最新
- 精选
- 山猫感谢老师点名,虽然最近几篇文章没有留言,但一直在关注。 在我工作过程中,经常会使用到设计模式,有些场景下我会根据需要搭配多种设计模式。渐渐的我发现,设计模式到最后还是回到面对对象的设计原则上。 我认为设计模式这个东西不能学死,而需要活学活用。比如:我知道这个按钮可能会拆成策略模式,但我可以预先留好位置,写好上下文代码,即使写成 if…else 也没关系。 以上是我个人经验,不知这样可合适2020-01-08111
- 奔奔奔跑谢谢智慧老师的布道,工作和生活中见过太多连代码都写不好的人,但是口里一蹦一个技术新词,我也一直苦恼于写好代码与学好技术之间的关系,直到看到这篇,我才有点摸到门道。但我任然不会写代码,写不出好的代码,这个应该怎么练习呢2020-01-123
- escray集中时间看了软件设计原理的模块,对于面向对象的设计原则和设计模式再一次加深了认识,不过最终还是要用到代码中去,其实也就是老师强调的场景的重要性。 之前写的大部分是项目代码,瀑布式开发模式,没有太多的考虑需求变更的事情,修修补补就过去了,实在不行还可以推到重来。 体制内十年,技术已经落伍,面临择业,希望能拿到 Offer,很好的提高一下自己。 看过《UML精粹》,的确是好书,个人以为 UML 看着一本就可以了。其他三本都是久闻大名,却没有看过,就从这里开始吧。2020-09-252
- 靠人品去赢这个精选留言真的是扎心了,但是细想还真是这意思。 你心里的想法,你和老板的关系是依赖关系,老板,“小张不要走,公司离不开你”。 实际上是依赖导致,老板,“傻叼,写的什么东西,差点在投资人面前玩砸了,什么涨工资?滚,老子换一个更便宜的”。 同样一个web工程war包,并不会去依赖tomcat,实在受不了你我去换Jetty或者花点钱用,付费的也一堆。2020-01-162
- QQ怪向各位大佬学习,跟着大佬一起学习,信心满满!2020-01-082
- 好好先生软考考了好多,当时要是学了就好了2020-03-291
- Heyx几年前读bob大叔的敏捷软件开发的时候,和李老师有同感,特别是一些大企业中,搞敏捷真的是流于形式,站会,快速版本等,这本书是真的从开发和实践的角度来讲敏捷,很实在,逻辑清晰2023-08-13归属地:湖北
- java小霸王醍醐灌顶,这就去看书2022-07-15
- William Ning要学习要看的东西真的很多~~ It's never too late to learn.2022-06-29
收起评论