Redian新闻
>
Design Pattern 2: Procedural, OO and Functional programming
avatar
f*e
3
明天星期五,忙里偷个闲。

【在 x*********w 的大作中提到】
:
: 二爷还不睡?

avatar
p*2
4
LS两个大牛也谈谈DP好吗?分享一下心得。
avatar
p*2
5

我一学东西的时候就睡眠好差,脑子停不下来。这两天工作上也有新东西要学,每天睡
眠时间跟Leetcode差不多了。

【在 x*********w 的大作中提到】
:
: 二爷还不睡?

avatar
p*2
6
没有人一起研究吗?我发现有一些面试题其实跟design pattern还是有一定关系的。以
前不知道所以没有意识。
avatar
g*g
7
你对设计模式的理解有误区。设计模式是比language construct更高层次,即常见实现
的抽象总结。不同语言的取舍不同,这就造成了一种语言的一个复杂实现,另一种语言
可能直接做进了语言的特性。比如Singleton只于Java和Scala,前者是复杂实现,后者
只需要一个关键字。
在这个层面上,你说DP是为了弥补语言特性没有错。但你没有意识到两个东西。
一是当一个实现可以抽象总结之后,就可以用类库来实现,在类库之上可以提供更高的
灵活性和更强的功能,在使用上并不会比没有在语言特性上实现的更繁琐。举个例子就
是@Singleton是ejb的spec,在java里你同样可以一个annotation把一个类做成
Singleton,包括spring/Guice在内的DI类库都提供了支持,而DI的功能已经远远超出
了Singleton的范畴。
二是DP抽象总结的很多东西,已经远远超出了语言特性本身的层次,而是谈系统的架构
。比如Java的enterprise application integration patterns。
avatar
p*2
8

这个我还没有写完。你说的这些我下一部分都会有涉及。除了你说的类库部分。这部分
我还不懂。

【在 g*****g 的大作中提到】
: 你对设计模式的理解有误区。设计模式是比language construct更高层次,即常见实现
: 的抽象总结。不同语言的取舍不同,这就造成了一种语言的一个复杂实现,另一种语言
: 可能直接做进了语言的特性。比如Singleton只于Java和Scala,前者是复杂实现,后者
: 只需要一个关键字。
: 在这个层面上,你说DP是为了弥补语言特性没有错。但你没有意识到两个东西。
: 一是当一个实现可以抽象总结之后,就可以用类库来实现,在类库之上可以提供更高的
: 灵活性和更强的功能,在使用上并不会比没有在语言特性上实现的更繁琐。举个例子就
: 是@Singleton是ejb的spec,在java里你同样可以一个annotation把一个类做成
: Singleton,包括spring/Guice在内的DI类库都提供了支持,而DI的功能已经远远超出
: 了Singleton的范畴。

avatar
p*2
10

又重新看了一遍你的回复。你说的这些都挺好的,我很赞同。跟我的理解不矛盾。

【在 g*****g 的大作中提到】
: 你对设计模式的理解有误区。设计模式是比language construct更高层次,即常见实现
: 的抽象总结。不同语言的取舍不同,这就造成了一种语言的一个复杂实现,另一种语言
: 可能直接做进了语言的特性。比如Singleton只于Java和Scala,前者是复杂实现,后者
: 只需要一个关键字。
: 在这个层面上,你说DP是为了弥补语言特性没有错。但你没有意识到两个东西。
: 一是当一个实现可以抽象总结之后,就可以用类库来实现,在类库之上可以提供更高的
: 灵活性和更强的功能,在使用上并不会比没有在语言特性上实现的更繁琐。举个例子就
: 是@Singleton是ejb的spec,在java里你同样可以一个annotation把一个类做成
: Singleton,包括spring/Guice在内的DI类库都提供了支持,而DI的功能已经远远超出
: 了Singleton的范畴。

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。