这是一个创建于 4394 天前的主题,其中的信息可能已经有所发展或是发生改变。
一点点故事背景:
我司有一个10人以下的开发团队, 其中包括3~4人Server,3人Client,2~3人DB。
不久前, board推荐了一位海归软件工程专家来我司交流开发经验, 期间他反复强调了在他工程经历中遇到的各种Design Patterns(以下简称DP), 同时请我们分享技术架构并列举开发过程中运用过的DPs, 而我们在之前的实际开发过程中,从未有过DP相关的话题讨论或技术指导。
在经过一段时间的review与总结之后, 开发团队才给出了一个大概的答复。这让我们的CEO开始关心DP在软件工程中的重要性,以及为什么我们之前从未有过相关话题的考虑。
此后, 我司的CTO与架构师给出的答复是: "Design Patterns在Client UI 开发中比较重要, Server端基本用不上".
说实话, 即使是站在一个虚心的junior开发者的角度, 我也无法完全接受这些前辈的回答。
虽然DP书中是以一个编辑器为例子,但这并不能证明DP只能适用于做UI。按我的理解,DP是在具体编程实现的层面对软件工程中的问题进行分类,并以OO的思路在实现效率与代码维护性之间做出折中性抽象解答。
从抽象的维度来看,DP应该界于算法与架构之间。
但是由于工程经验实在苍白, 我无法列举具体的例子证明上述假设。
不知在你的心里, DP是怎样的定位? 你觉得它的实用价值有多少 ? 你是否认同我的观点? 是否有相关的经验与大家分享?
感谢!
5 条回复 1970-01-01 08:00:00 +08:00  | | 1 missdeer 2014 年 4 月 14 日 DP是OO用法的提炼,OO最多用的地方是GUI。 |
 | | 2 leiz 2014 年 4 月 14 日 此后, 我司的CTO与架构师给出的答复是: "Design Patterns在Client UI 开发中比较重要, Server端基本用不上".
见libevent.
方法论和实际方案还是有关系的。虽然使用场景不好说。 |
 | | 3 min 2014 年 4 月 14 日 DP大概是讨论:1. 你遇到了什么问题 2. 你有什么样的工具可供解决问题 3. 基于1和2得出一个兼顾效率灵活性可维护可扩展的办法
这些个问题可能出现在不同的系统逻辑的层面上,没有必要特别限定是算法的,代码的,架构的,前后端的DP |
 | | 4 kuber 2014 年 4 月 14 日 好大一个坑。 如果说设计模式不仅仅指DesignPattern 这本书里面介绍的23 模式,或者不仅仅是指字面上那些模式的名字,有可能你天天都在用,只是你未必知道罢了。 |
 | | 5 kshatriya 2014 年 4 月 16 日 设计模式,就是一套前人总结的,可以复用的代码模板. 没什么高深的, 只是一种经验. |