由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 准备走马观花把GoF 23个pattern过一遍了
相关主题
工作中,Design Pattern使用的多吗?chess game的design里面的回溯问题
请问准备面试的OO design题目要了解哪些design pattern?请牛人推荐复习面试设计模式的书
UML和设计模式复习面试算法,除了4人帮的书还有什么实用的书可看?
真正牛X的是设计模式牛人一道OO设计题,有经验的请给些思路,多谢
准备总结一下design pattern了再来一个design的题
design pattern大家怎么准备?给大家推荐一个design pattern的网站
请问 design pattern 有用吗》?2道设计题: 实现linkedin自动推荐/MS word数据结构
关于 C++ design pattern 的资料求Design Pattern 复习策略
相关话题的讨论汇总
话题: gof话题: pattern话题: oo话题: dp话题: vector
进入JobHunting版参与讨论
1 (共1页)
p*****2
发帖数: 21240
1
每一个简单一两句话过一下。
p*****2
发帖数: 21240
2
先打个草稿
首先,GoF设计模式要解决的问题不少都是因为OO不承认全局变量和函数造成的。
其次,设计模式的三个准则:中意与组合而不是继承, 依赖于接口而不是实现,高内
聚低耦合
第三,设计模式分为creational, structural, behaviroal。
Strategy: OO不承认函数造成的
Decrator: 就是平时常常提到的wrapper, 也属于中意与组合而不是继承
Factory: 感觉是纯OO的东西。Factory method有两种,一种是effective Java里谈的
,一种是GoF里谈的,我觉得都属于design pattern的范畴,但是要注意区分。因为平
时所说的DP一般指GoF,但是我感觉前者可能更常用,所以这个比较容易confused。面
试比较容易考到,感觉应该跟面试官说清楚。
Observer: 太常用了,平时见到的什么event,notification都是这个pattern。
Chain of Responsibility: 一看就想到了exception。除此之外,貌似driver的stack
也是这个意思。
Singleton: 不用多说了,OO不承认全局变量造成的,面试最容易考到,CC150上的代码
问题太多。
Flyweight: 这东西我感觉还真没怎么见过应用除了线程池。
Adapter: 很常见。为了保持compatibility经常使用,也是wrapper。
Facade: 思路太直接了,应用也很常见,感觉不需要学习也会用。
Template: 感觉就是多态性的一个应用,不需要学习也会用。
Builder: Leetcode说工作经常用,不过我没见过,当然我不是搞OO的。
Iterator: 现在各个语言都实现了,再叫pattern恐怕不合适了。
Composite: 看看Google, Linkedin的vector of vector的面试题吧。
Command: 实在是太直接常见了,不需要学习也会用。
Mediator: 现在流行MVC,不知道mediator的应用还广不广。
State: 非常反FP的东西,不过IP里面还是很常用的。
Proxy: 太常用了,不学也会用。
Abstract Factory: 肯定也是纯OO的东西,我工作没有见过,当然我不是搞OO的。属于
依赖于接口而不是实现。
Prototype: 没怎么见过,能感觉到它是有用的。
Bridge: 体现了中意与组合而不是继承, 某大牛面一个牛逼startup碰到过。
Interpreter: 一看就很难。被王圻批判过。
Memento: 感觉有用处,在考虑应用到自己工作项目中去。
Visitor: 由于OO不承认函数造成的。也被王圻批判过。不过板上有人面试碰到过,工
作中处理html的dom也用到过。
h*****3
发帖数: 1391
3
哎,我当年考试的时候23个至少出了15个让你解释。
p*****2
发帖数: 21240
4

什么考试呀?

【在 h*****3 的大作中提到】
: 哎,我当年考试的时候23个至少出了15个让你解释。
d*******3
发帖数: 58
5
牛x,我表示完全不懂这些DP~
p*****2
发帖数: 21240
6

其实也不难。看一下也花不了多长时间。很多平时就在用了,只是没意识而已。

【在 d*******3 的大作中提到】
: 牛x,我表示完全不懂这些DP~
i**********e
发帖数: 1145
7
adapter 工作中挺常见的,一直看到过,但没留意这也是 GOF 里的其中一个 DP 。
之前就一直认为像个 helper function 把一个data massage 到另一种data格式。

【在 p*****2 的大作中提到】
:
: 其实也不难。看一下也花不了多长时间。很多平时就在用了,只是没意识而已。

h*****3
发帖数: 1391
8
面试中的笔试。

【在 p*****2 的大作中提到】
:
: 其实也不难。看一下也花不了多长时间。很多平时就在用了,只是没意识而已。

p*****2
发帖数: 21240
9

是呀。所以王垠说他画了画,他的一个pattern对应这GoF的几个pattern。比如平时说
的wrapper,至少包含了decorator,adapter, facade,command几个。

【在 i**********e 的大作中提到】
: adapter 工作中挺常见的,一直看到过,但没留意这也是 GOF 里的其中一个 DP 。
: 之前就一直认为像个 helper function 把一个data massage 到另一种data格式。

p*****2
发帖数: 21240
10

什么样的公司呀?大公司,小公司呢?这么看中DP呀?

【在 h*****3 的大作中提到】
: 面试中的笔试。
相关主题
design pattern大家怎么准备?chess game的design里面的回溯问题
请问 design pattern 有用吗》?请牛人推荐复习面试设计模式的书
关于 C++ design pattern 的资料复习面试算法,除了4人帮的书还有什么实用的书可看?
进入JobHunting版参与讨论
r**h
发帖数: 1288
11
我前段时间看了下那个heading first DP中前面常用的几个
觉得最大问题是,懂得了这个pattern的意义和用法,但是遇到具体的设计题却想不到
去使用这个pattern,或者想到了这个pattern,却不知道如何代入
p*****2
发帖数: 21240
12

所以需要大家share经验和总结呀。呵呵。我觉得看到很多pattern发现工作中就用到过
,或者碰到过类似的问题,但是自己的方法可能没有DP上的好,当然也有可能更好。这
样更容易理解。

【在 r**h 的大作中提到】
: 我前段时间看了下那个heading first DP中前面常用的几个
: 觉得最大问题是,懂得了这个pattern的意义和用法,但是遇到具体的设计题却想不到
: 去使用这个pattern,或者想到了这个pattern,却不知道如何代入

p*****2
发帖数: 21240
13
更新了一下,全文在这里
http://blog.sina.com.cn/s/blog_b9285de20101k36b.html
w********p
发帖数: 948
14
强,刚刚听说要学DP。这会儿总结都出来了。
Design Pattern 估计我要多啃会儿。本来打算啃 head first. 据说比GOF 要容易,弄
通了面试没问题。
这个我打印下来,压桌面上。

【在 p*****2 的大作中提到】
: 先打个草稿
: 首先,GoF设计模式要解决的问题不少都是因为OO不承认全局变量和函数造成的。
: 其次,设计模式的三个准则:中意与组合而不是继承, 依赖于接口而不是实现,高内
: 聚低耦合
: 第三,设计模式分为creational, structural, behaviroal。
: Strategy: OO不承认函数造成的
: Decrator: 就是平时常常提到的wrapper, 也属于中意与组合而不是继承
: Factory: 感觉是纯OO的东西。Factory method有两种,一种是effective Java里谈的
: ,一种是GoF里谈的,我觉得都属于design pattern的范畴,但是要注意区分。因为平
: 时所说的DP一般指GoF,但是我感觉前者可能更常用,所以这个比较容易confused。面

B******5
发帖数: 4676
15
正好在看这本书,顺便过来学习二爷的笔记
T*********s
发帖数: 17839
16
帮顶
不懂
G****A
发帖数: 4160
17
多谢总结。 adapter, observer, factory这几个还是很常用的

【在 p*****2 的大作中提到】
: 先打个草稿
: 首先,GoF设计模式要解决的问题不少都是因为OO不承认全局变量和函数造成的。
: 其次,设计模式的三个准则:中意与组合而不是继承, 依赖于接口而不是实现,高内
: 聚低耦合
: 第三,设计模式分为creational, structural, behaviroal。
: Strategy: OO不承认函数造成的
: Decrator: 就是平时常常提到的wrapper, 也属于中意与组合而不是继承
: Factory: 感觉是纯OO的东西。Factory method有两种,一种是effective Java里谈的
: ,一种是GoF里谈的,我觉得都属于design pattern的范畴,但是要注意区分。因为平
: 时所说的DP一般指GoF,但是我感觉前者可能更常用,所以这个比较容易confused。面

h*****3
发帖数: 1391
18
小公司。一般而言,如果不是新毕业生的话,一些基本的dp都或多或少会考点。看看是
不是和简历上说的符合。不能说编程了几年,连基本的dp和语法都不会。

【在 p*****2 的大作中提到】
: 更新了一下,全文在这里
: http://blog.sina.com.cn/s/blog_b9285de20101k36b.html

p*****2
发帖数: 21240
19

不过如果是做C编程的呢?感觉不会也不算不正常吧?

【在 h*****3 的大作中提到】
: 小公司。一般而言,如果不是新毕业生的话,一些基本的dp都或多或少会考点。看看是
: 不是和简历上说的符合。不能说编程了几年,连基本的dp和语法都不会。

c***f
发帖数: 40
20
google linkedin vector of vector 那到面试题在哪能找到呢
p*****2
发帖数: 21240
21

好像板上讨论过无数次了。
就是vector of vector,实现iterator DP

【在 c***f 的大作中提到】
: google linkedin vector of vector 那到面试题在哪能找到呢
b*******n
发帖数: 847
22
二爷的贴先顶后看,不懂也顶~
1 (共1页)
进入JobHunting版参与讨论
相关主题
求Design Pattern 复习策略准备总结一下design pattern了
关于design patterndesign pattern大家怎么准备?
GoF的design pattern的经典书是1995年的吗?请问 design pattern 有用吗》?
design patterns 哪本书比较好啊关于 C++ design pattern 的资料
工作中,Design Pattern使用的多吗?chess game的design里面的回溯问题
请问准备面试的OO design题目要了解哪些design pattern?请牛人推荐复习面试设计模式的书
UML和设计模式复习面试算法,除了4人帮的书还有什么实用的书可看?
真正牛X的是设计模式牛人一道OO设计题,有经验的请给些思路,多谢
相关话题的讨论汇总
话题: gof话题: pattern话题: oo话题: dp话题: vector