孙子兵法 VS 设计模式
2011-01-07 16:53
253 查看
最近在学习设计模式,N年前就常听一些人在吹设计模式,吹他们学了什么设计模式,或是看了什么什么大师的经典之作。我是务实派,不喜欢空的,所谓的眩的技术。打开那些人的代码。发现连面向对象的一些基础的东西都没有用,基本是面向过程。那时后流行三层开发模式。结果打开代码一开,第二层里包的就一句话return 另一类名。 其它什么事也没有干。完全是假三层。
所以对于设计模式之类的书也不太感兴趣,个人理解,工作中的开发经验的积累才是重要的。注重代码的复用。减小模块间的耦合度等等。 设计模式不就是别人开发的经验嘛!这个也需要根据情况而采用和学习呀,由于一直忙于整理和理解业务。所以在这方面的注重上就少了些。因为如果需求不了解清楚,你的架构再好,也是一堆废品。
不过随着时间的推移,发现自已还是需要了解一下设计模式,学习前人的经验。于是这段时间又重新开始学习,在学习过程中发现的确如一些书上所言有时自已在解决一些问题是可能正好也有了某些模式,只是自已不知道,还想了很久。所以学习一下前人的经验,的确可以少走弯路。
在学习的过程中,我发现一个问题那就是学习设计模式前,如果本身已经经历过很多项目,也就是说有一定的开发经验则在理解一些模式时,可能就要容易些。反之就会觉得乏味。还有就是这个设计模式就和孙子兵法一样,他是一种策略。设计模式是开发程序,组织代码的一种策略, 孙子兵法是打仗时,组织队伍,摆兵布阵的一种策略。 有一个最大的共同点,那就是这些都需要去实践的,且如果之前有一定的实践经验才能更好的理解设计模式或孙子兵法。如果没有去实践,则就成了纸上谈兵了。
记得不知是谁说过,运用之妙,存乎一心!运用不同,则发挥的作用也不同。这个可能更时实践经验的原因了。
所以我觉得学习设计模式,一定要了解使用模式的背景(为什么要用这个模式,用了这个模式能解决什么问题,达到什么目的)。还有就是多练习。多运用到工作中。
呵呵!以上是这段时间学习的心得!放在这里存档,也提醒自已。
所以对于设计模式之类的书也不太感兴趣,个人理解,工作中的开发经验的积累才是重要的。注重代码的复用。减小模块间的耦合度等等。 设计模式不就是别人开发的经验嘛!这个也需要根据情况而采用和学习呀,由于一直忙于整理和理解业务。所以在这方面的注重上就少了些。因为如果需求不了解清楚,你的架构再好,也是一堆废品。
不过随着时间的推移,发现自已还是需要了解一下设计模式,学习前人的经验。于是这段时间又重新开始学习,在学习过程中发现的确如一些书上所言有时自已在解决一些问题是可能正好也有了某些模式,只是自已不知道,还想了很久。所以学习一下前人的经验,的确可以少走弯路。
在学习的过程中,我发现一个问题那就是学习设计模式前,如果本身已经经历过很多项目,也就是说有一定的开发经验则在理解一些模式时,可能就要容易些。反之就会觉得乏味。还有就是这个设计模式就和孙子兵法一样,他是一种策略。设计模式是开发程序,组织代码的一种策略, 孙子兵法是打仗时,组织队伍,摆兵布阵的一种策略。 有一个最大的共同点,那就是这些都需要去实践的,且如果之前有一定的实践经验才能更好的理解设计模式或孙子兵法。如果没有去实践,则就成了纸上谈兵了。
记得不知是谁说过,运用之妙,存乎一心!运用不同,则发挥的作用也不同。这个可能更时实践经验的原因了。
所以我觉得学习设计模式,一定要了解使用模式的背景(为什么要用这个模式,用了这个模式能解决什么问题,达到什么目的)。还有就是多练习。多运用到工作中。
呵呵!以上是这段时间学习的心得!放在这里存档,也提醒自已。
相关文章推荐
- 观察者设计模式 Vs 事件委托(java)
- DICOM医学图像处理:Dcmtk与fo-dicom保存文件的不同设计模式之“同步VS异步”+“单线程VS多线程”
- 跟我学设计模式视频教程——装饰模式,装饰模式VS代理模式
- 我学的是设计模式的视频教程——辛格尔顿,生成器VS工厂方法
- 【设计】单例模式--C++源代码(VS2015)
- 【设计模式】——原型模式VS模板方法模式
- Java设计模式(七) Spring AOP JDK动态代理 VS. cglib
- 设计模式--Abstract server模式 VS Adapter 模式
- 【设计模式】 模式PK:命令模式VS策略模式
- 【设计模式】 模式PK:策略模式VS桥梁模式
- 【设计模式】策略模式 VS. 简单工厂
- Java设计模式(六) 代理模式 VS. 装饰模式
- 设计模式——浅复制VS深复制
- Spring 模板方法 vs 经典模板方法设计模式
- C#判断VS是否处于设计模式
- 设计模式之工厂方法模式VS简单工厂方法模式
- 连载:面向对象葵花宝典:思想、技巧与实践(39) - 设计原则 vs 设计模式
- 【设计模式】—程序员的《孙子兵法》
- 框架模式VS设计模式
- JAVA 设计模式:静态代理VS动态代理