模式学习总结
2005-04-05 10:52 java线程例子 阅读(130) 评论(0) 编辑 收藏 举报
模式的产生:
人类在劳动过程中,有很多事情都会重复的出现,而处理这
些事情的方法也比较相近,于是人们开始总结,形成一种对这类事情进行处
理的经验,并以某种形式(书,口述等)在人们之间进行传递,这样其他的人
或后来人可以在处理这类事务的时候有所借鉴,这样就大大的提高了劳动的
效率,其实这种解决某些特定的、会重复出现的一套处理事务的经验方法就
是模式。
模式,有的时候也是经验的代名词,在人类的生活,劳动,学习中可以说
是无处不在,模式最大的好处就是复用(借鉴),从而可以提高效率。从某个
角度来件,人类的知识积累过程也是模式的积累过程,只是我们平时不太注
意,或没有上升到理论而已。
也许有人说,这个世界没有两样完全相同的事物,这当然是对的,但人类
在学习总结过程中有一个重要的过程就是抽象,如果没有抽象能力,人类也不
可能获得进步,因此在学习模式和使用模式的过程中,抽象是一个非常重要的
部分,否则再好的模式你也很难发现有可用的地方。
抽象很重要,但抽象很玄么?其实抽象的理解很简单就是按你的目的对事
务进行化繁为简的过程。
设计模式:
设计模式可以说是模式在设计领域的体现,在人类进行设计活动的过程
中,人们发现有些设计的过程及方法都是可以复用的,而且可以让人们做到
举一反三,于是人们就把这些在一定的范围内,频繁出现,而且解决的方法
相对比较固定的经验进行总结,并按一定的约定形式表达出来,就形成了设
计的模式。
怎样看待模式:
首先、模式并不是一种很神秘或深奥的东西,其实模式就是经验和知识的一
个子集,模式的名称和表达形式都是模式外在的东西,当然,为了更好的复用和学
习模式,采用比较统一的表现形式也是很有必要的,如,在软件设计模式中,
很多模式的描述都采用UML图来进行直观表达。
其次、模式是一种实践过程中的产物,因此学习模式和复用模式都必须经过实践
才能体会更深刻,如果没有一定的编程经验,要学好模式是很困难的,因此在
学习模式的过程中,动手和联系自己编程的经验就很重要。
第三、模式的目的是为了通过提高复用来提高效率,前面说过,这个世界没有完
全相同的两种东西,模式可以复用的场景本身就是比较模糊的,虽然经过抽象
过程知道某种场景(问题)可以采用某个模式,但在实际的应用过程中还是会
有所差别的。所以模式在使用的时候需要做一定的修改,不要死套。
第四、模式跟创新又是矛盾的一对,在哲学中所说的经验主义同样也适用于我们讨
论的模式,这就需要我们在学习和使用模式的过程中对模式有一个清醒的认识:
1、模式不是万能的,尽信书则不如无书;
2、世界是变化的,模式也需与时俱进;
3、解决问题的方法不只一种,适用问题的模式也可以有多个。
4、书中提的设计模式仅仅是大海中的一滴水,如果可能,你也可以发现
模式。
5、总结是发现模式的唯一途径,在编程设计的过程中要进步就需要不断总结。
人类在劳动过程中,有很多事情都会重复的出现,而处理这
些事情的方法也比较相近,于是人们开始总结,形成一种对这类事情进行处
理的经验,并以某种形式(书,口述等)在人们之间进行传递,这样其他的人
或后来人可以在处理这类事务的时候有所借鉴,这样就大大的提高了劳动的
效率,其实这种解决某些特定的、会重复出现的一套处理事务的经验方法就
是模式。
模式,有的时候也是经验的代名词,在人类的生活,劳动,学习中可以说
是无处不在,模式最大的好处就是复用(借鉴),从而可以提高效率。从某个
角度来件,人类的知识积累过程也是模式的积累过程,只是我们平时不太注
意,或没有上升到理论而已。
也许有人说,这个世界没有两样完全相同的事物,这当然是对的,但人类
在学习总结过程中有一个重要的过程就是抽象,如果没有抽象能力,人类也不
可能获得进步,因此在学习模式和使用模式的过程中,抽象是一个非常重要的
部分,否则再好的模式你也很难发现有可用的地方。
抽象很重要,但抽象很玄么?其实抽象的理解很简单就是按你的目的对事
务进行化繁为简的过程。
设计模式:
设计模式可以说是模式在设计领域的体现,在人类进行设计活动的过程
中,人们发现有些设计的过程及方法都是可以复用的,而且可以让人们做到
举一反三,于是人们就把这些在一定的范围内,频繁出现,而且解决的方法
相对比较固定的经验进行总结,并按一定的约定形式表达出来,就形成了设
计的模式。
怎样看待模式:
首先、模式并不是一种很神秘或深奥的东西,其实模式就是经验和知识的一
个子集,模式的名称和表达形式都是模式外在的东西,当然,为了更好的复用和学
习模式,采用比较统一的表现形式也是很有必要的,如,在软件设计模式中,
很多模式的描述都采用UML图来进行直观表达。
其次、模式是一种实践过程中的产物,因此学习模式和复用模式都必须经过实践
才能体会更深刻,如果没有一定的编程经验,要学好模式是很困难的,因此在
学习模式的过程中,动手和联系自己编程的经验就很重要。
第三、模式的目的是为了通过提高复用来提高效率,前面说过,这个世界没有完
全相同的两种东西,模式可以复用的场景本身就是比较模糊的,虽然经过抽象
过程知道某种场景(问题)可以采用某个模式,但在实际的应用过程中还是会
有所差别的。所以模式在使用的时候需要做一定的修改,不要死套。
第四、模式跟创新又是矛盾的一对,在哲学中所说的经验主义同样也适用于我们讨
论的模式,这就需要我们在学习和使用模式的过程中对模式有一个清醒的认识:
1、模式不是万能的,尽信书则不如无书;
2、世界是变化的,模式也需与时俱进;
3、解决问题的方法不只一种,适用问题的模式也可以有多个。
4、书中提的设计模式仅仅是大海中的一滴水,如果可能,你也可以发现
模式。
5、总结是发现模式的唯一途径,在编程设计的过程中要进步就需要不断总结。