生搬硬套设计模式坑害了多少人

看了这个帖子,有感写点废话
http://www.iteye.com/topic/243309

现在随便哪个面试不考点设计模式什么的,似乎就不叫面试,我倒想问问,面试官们你们自己不算那些死记硬背的,能记住多少模式的思想,又有多少是你们每天写的程序会用到的

我承认
1. 设计模式确实是前人总结的一些经验和良好的设计范式,是很有价值的
2. 把握良好的设计模式能够理清程序的骨架,使程序变得更清晰

但是我很想说的是

1.设计模式是最通用的一些程序设计方法和范式,不同的领域有自己的一些模式可以遵循,未必非得是那20几种里的某一个

2.书中列举的那些模式是死的,只是特定问题的一些设计思路,未必就非得那样,生搬硬套是很傻的行为

3.设计模式这东西没写过一定得代码量,看了书上写的那些也未必理解,代码量积累到一定程序(当然不是每天重复的体力劳动,需要勤思考),自然会对特定领域,或特定问题有自己的一套解决方法或者设计范式,很可能早就有了一套自己的组件库,所以也不需要去看书上那些死的东西,该会的你都会了,其他的你也用不到

所以基本上 面试时考个什么叫包装,什么叫工厂,抽象方法的实在是没什么意义,都成了背书了

举个最简单的例子,设计模式书上讲包装设计模式废了那么多笔墨,又是抽象类,又是接口的,累不累呀,其实可能天天都用的东西,不搞复杂点就不叫高深,这样难道不叫包装吗?


public interface Display{
String display();
}

public class DisplayWrapper implements Display{
private Display display;
public DisplayWrapper(Display display){
this.display=display;
}
public String display(){
String s=display.display();
//wrapper自己的处理
}
}


很多程序员几乎认为,封装得不花个半天功夫根本找不到实现类在哪 这就是面向对象的美,就是面向对象的最高境界,简单的事情往往搞的N复杂

我就是想说 简单的就是最好的,简单的往往也是强大的

粗浅见解,有拍砖的欢迎
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值