各位设计开发自己的框架过程中使用了多少个设计模式?

2020-08-10 08:35:52 +08:00
 tctc4869

软件编程中有比较经典的 26 个设计模式,分为创建,结构,行为。

那么各位开发自己的框架有哪些,其中用到多个设计模式呢?尤其是结构与行为的设计模式,各位用到了多少个?

我感觉 26 个设计模式中,有几个设计模式是消灭重复性冗余代码的关键。比如策略模式。除了这个还有哪些设计模式能消灭重复性冗余的代码?

5182 次点击
所在节点    程序员
27 条回复
panhongkui
2020-08-10 12:59:02 +08:00
设计模式就是软考的时候复习了下,项目中常用的也就十来个,消息队列会用到观察者模式。
ruyu
2020-08-10 13:19:04 +08:00
设计模式都是浮云
wysnylc
2020-08-10 14:09:00 +08:00
@tctc4869 #16 策略模式建议使用 switch+interface 实现,不要写太复杂要不然维护好麻烦
tctc4869
2020-08-11 08:31:56 +08:00
@wysnylc 我倒觉得,策略模式用 map,key 是 String,value 是函数对象这种形式比较好,实现起来也比较简单,要知道有些设计模式,一些语言本身也集成了。
tctc4869
2020-08-11 08:37:34 +08:00
@wysnylc 一些设计模式的组合也能在更广的角度上上消灭冗余代码,比如命令模式与策略模式的设计组合
zzl22100048
2020-08-11 08:38:02 +08:00
@wysnylc 都 switch 了为啥不一步到位用 map
wysnylc
2020-08-11 10:12:09 +08:00
@zzl22100048 #26 switch 如果是 String 类型内部实现就是先 hash 对比再 eq 和 Map 一致,使用 Map 的问题是无法直观的看到 Map 的内容
如果按照你这个逻辑最后一定是使用 Objects

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/696942

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX