g****y 发帖数: 240 | 1 准备面试,有没有design pattern的书籍推荐? 谢谢 |
|
|
b*2 发帖数: 94 | 3 超喜欢Head frist design patterns
看的轻松愉悦~ |
|
z********i 发帖数: 568 | 4 为什么会比switch statements好?
Switch statements:
public boolean beats(GameObject object){
if(object.getClass.getName(0.equals("Rock"){
result=false;
}
else if(object.getClass.getName(0.equals("Rock"){
result=false;
}else if(object.getClass.getName(0.equals("Rock"){
result=false;
}
return result;
}
Doulbe Dispatch Pattern:
public class Rock implements GameObject{
public boolean beats(GameObject o){
return o.beatsRock();
}
public beatsRock(){
return false;
}... 阅读全帖 |
|
|
G******n 发帖数: 749 | 6 对于factory 的 design pattern
factory 生成的object的owenership 是属于client 还是属于factory?
对于abstract factory是怎么样的? |
|
d**********x 发帖数: 4083 | 7 有。有时间就把head first design pattern过一下吧。 |
|
M********5 发帖数: 715 | 8 二爷好人呐,等这个总结等好久了。。。个人觉得design pattern对于system design
还是很有帮助的。。。 |
|
l*****a 发帖数: 14598 | 9 问一下你实际工作中有多少使用DP的经验?
design Pattern, not dynamic programming |
|
p*****2 发帖数: 21240 | 10 先说CC150上的Singleton吧。
三个bug
1. _instance应该是static的
2. 应该定义private constructor
3. multi threading
再提两点:
1. 这个例子还包含了lazy initialization pattern
2. 这是老的Java Singleton的实现方式,新的方式是通过Enum来实现的 |
|
p*****2 发帖数: 21240 | 11
挺多的。我准备分几个层次来说,感觉这样才能解决那些迷惑
1. design pattern
2. GoF
3. Java |
|
g**e 发帖数: 6127 | 12 Josh Bloch确实提到Java 1.5以后应该用enum。可是我觉得没啥优势,enum不能继承反
倒是个劣势。
singleton这个东西,我个人认为是anti pattern的,理由以前说过。 |
|
w******i 发帖数: 34 | 13 赞二爷!
话说前两天刚囫囵吞枣的看了一遍head first design pattern
不过仍然云里雾里的,不得要领啊。。。 |
|
p*****2 发帖数: 21240 | 14
我现在看Design Patterns For Dummies,可能没你那个好。不过可能理解起来简单点 |
|
p*****2 发帖数: 21240 | 15 CC150的Factory method有更大的问题。
这个例子根本就不是design pattern。所以大家要注意了,CC150上的两个例子面试都
不能用。一定要注意。
现在看来CC150真是把双刃剑,里边的概念误导很多。很奇怪这样的作者是如何在
Google给别人面试的。 |
|
h****e 发帖数: 928 | 16 Head First Design Patterns讲得不错。
对Web company来说,一般MVC用的比较多。 |
|
y****n 发帖数: 743 | 17 Design Pattern是个不错的话题,有兴趣一些研习一下。
N久之前,曾经囫囵吞枣地看过一些,现在都忘得差不多了。 |
|
y****n 发帖数: 743 | 18 简单的用过一些,singleton,adapter,builder之类的。
从来没有认真想过这些东西各自的优势,也没总结过。
甚至有时见了别人用的design pattern,叫不上名来。 |
|
p*****2 发帖数: 21240 | 19
这个不算design pattern的吧?file system一般都不是OO写的吧? |
|
p*****2 发帖数: 21240 | 20 没有人一起研究吗?我发现有一些面试题其实跟design pattern还是有一定关系的。以
前不知道所以没有意识。 |
|
g*****g 发帖数: 34805 | 21 你对设计模式的理解有误区。设计模式是比language construct更高层次,即常见实现
的抽象总结。不同语言的取舍不同,这就造成了一种语言的一个复杂实现,另一种语言
可能直接做进了语言的特性。比如Singleton只于Java和Scala,前者是复杂实现,后者
只需要一个关键字。
在这个层面上,你说DP是为了弥补语言特性没有错。但你没有意识到两个东西。
一是当一个实现可以抽象总结之后,就可以用类库来实现,在类库之上可以提供更高的
灵活性和更强的功能,在使用上并不会比没有在语言特性上实现的更繁琐。举个例子就
是@Singleton是ejb的spec,在java里你同样可以一个annotation把一个类做成
Singleton,包括spring/Guice在内的DI类库都提供了支持,而DI的功能已经远远超出
了Singleton的范畴。
二是DP抽象总结的很多东西,已经远远超出了语言特性本身的层次,而是谈系统的架构
。比如Java的enterprise application integration patterns。 |
|
p*****2 发帖数: 21240 | 22
所以需要大家share经验和总结呀。呵呵。我觉得看到很多pattern发现工作中就用到过
,或者碰到过类似的问题,但是自己的方法可能没有DP上的好,当然也有可能更好。这
样更容易理解。 |
|
w********p 发帖数: 948 | 23 强,刚刚听说要学DP。这会儿总结都出来了。
Design Pattern 估计我要多啃会儿。本来打算啃 head first. 据说比GOF 要容易,弄
通了面试没问题。
这个我打印下来,压桌面上。 |
|
f*********m 发帖数: 726 | 24 多谢大牛。
能说说其中用到的一些数据分析技术或算法,比如machine learning, data mining方
面的,一般是在data layer还是business layer?这些技术或算法有什么比较常见的设
计方面的考虑吗?
有哪些常规desktop软件设计的pattern可以用在web方面吗?我能想到的:mvc,
singleton,...
多谢啊。 |
|
I**********e 发帖数: 92 | 25 LZ, coursera有门课叫Pattern-Oriented Software Architecure,你可以去看看~ |
|
g**********y 发帖数: 14569 | 26 不喜欢死记硬背就不该问这样的问题。
parking lot可以演变成各种问法,你怎么可能用一种固定的pattern来解呢? |
|
x*******z 发帖数: 31 | 27 我是new grad, 请问一般pattern design 会考什么类型的题啊? 是要写代码么? 还
是说知道概念啊?如果要知道概念要知道到什么程度比较好? |
|
g*********e 发帖数: 14401 | 28 据我观察,考design pattern的60%就问singleton。 |
|
m*****l 发帖数: 95 | 29 我一直觉得design pattern是功力,要慢慢练的。这种东西用的多了你面试时候自然会
表现出来的,面对设计题的时候会和不会差很多。而且现在小公司pair program的面试
方式越来越多了。 |
|
d**k 发帖数: 797 | 30 factory and abstract factory, strategy, facade, repository
其实很多平时都用,只不过你不会认为用了design pattern |
|
|
j**********3 发帖数: 3211 | 32 我也觉得很扯淡。。。
但没办法啊
pattern |
|
g*********e 发帖数: 14401 | 33
pattern
re
需要的时候类似的自然而然就写出来了。不需要的时候硬套就没意思了 |
|
z****e 发帖数: 54598 | 34 最终是不是人来执行这个东西?
人的错误你是否要考虑进去?
你知道dp用在c++比用在java还早么?
四人帮那本书我看的时候就是看c++版本而非java版本的
最早是smalltalk,而不是什么c++,这个东西是跟paradigm互相依存的
而不是具体到某个语言,任何oop的语言都会用相同的patterns
java只是比较prevail而已,所以很多人都用java来impl这个东西
并不代表这个东西只是java独有,c++不能写singleton这些?
至于怎么做积木,赶紧给我拉倒,你的物理学得怎样?
理论本质是应用数学,物理系还是太高级了,应该从数学系开始学
直接学物理比较容易吊儿郎当了
物。 |
|
d******k 发帖数: 32 | 35 你不用就不要说人家是扯谈。作为一个team,很多人一起写code的时候,就知道code写
得好不好,很大程度上不是取决于你的dp算法,而是code的结构。试问工作了有多少机
会给你写dp?大部分时候解决的是business logic。
为什么觉得flg考的就是对就是好,凭什么它不考的别人考就是错?
pattern |
|
f*****e 发帖数: 2992 | 36 公司写code就是要像一个人写出来的,有固定的pattern。 |
|
z*******3 发帖数: 13709 | 37 没错,但是看别人代码,code review就是senior的工作了
看别人代码时候,如果junior用了pattern,会容易阅读很多
差错率也少很多 |
|
a**********0 发帖数: 84 | 38 请问 new grad会考design pattern吗?从来没学过怎么办呢? |
|
d******5 发帖数: 11 | 39 Onsite 完两天,发了封信问hr feedback, hr回信说"We are in a bit of a holding
pattern at this time regarding your application。 I'll let you know when we
come out of holding status."
知道的前辈看看什么意思,从没遇到过啊。 |
|
m**********j 发帖数: 8645 | 40 只要你没收到带签字的offer letter,就是什么都没有。
别幻想。
[在 dgsuper5 (mtgk) 的大作中提到:]
:Onsite 完两天,发了封信问hr feedback, hr回信说"We are in a bit of a
holding pattern at this time regarding your application。 I'll let you
know when we come out of holding status."
:
:........... |
|
d**********6 发帖数: 4434 | 41 你要找最长prefix,第一个字符串中最长的prefix是catdog,pattern就是00101了
第二个字符串也要运行一下最长的prefix才变成00101 |
|
d**********6 发帖数: 4434 | 42 你要找最长prefix,第一个字符串中最长的prefix是catdog,pattern就是00101了
第二个字符串也要运行一下最长的prefix才变成00101 |
|
x*******9 发帖数: 138 | 43 ++@heteroclinic
如果pattern少的话,就枚举XYZ的长度,顺序验证一下就好了。。。
我觉得这个最起码是一个60分的答案 |
|
|
c*******y 发帖数: 570 | 45 首先,从面试功利角度,感觉背一背停车场扑克牌也就差不多能混过去了,没必要精通
各种UML图,User case,系统流程图等等。
如果从以后工作的角度来看,需要把UML和Design Pattern这些东西高的很懂吗?还是
说时间有限的情况
下先把coding和算法搞好再说? |
|
e***a 发帖数: 1661 | 46 many tech interviews include OOD 和 Design Pattern |
|
a*****u 发帖数: 1712 | 47 先算法和coding,design pattern是nice to have,UML看都不需要看 |
|
a*******a 发帖数: 383 | 48 比如学校学的visitor design pattern什么的会经常用到吗?恳请各位大牛赐教 |
|
a*******a 发帖数: 383 | 49 对,有些pattern用的不好,真有一种华而不实的感觉,反而更绕。 |
|
e***a 发帖数: 1661 | 50 Design Patterns r very useful to software engineering |
|