这是Artima Developer的总编 Bill Venners对Erich Gamma的采访中的
第四部分。在前三部分中,Bill和Erich讨论了
如何思考和使用Design Pattern,
灵活性以及可重用性和
如何对Interface编程以及使用使用object composition而不是类继承
在第四部分中,Bill和Erich讨论了设计模式如何与解决问题相配对,设计模式如何帮助你理解问题解决得意图,以及如何通过练习成为一个好的设计师。
[Update: 一些心得]:
如何成为一个好的设计师?理解这些设计模式是不够的,仅仅只读完了GoF这本书也是不够的。还需要做甚呢?你需要练习,需要看代码,看其它好的设计师是如何设计系统的。
In addition to reading books, you need to read and understand lots of code, see how existing systems solve a particular problem and what experienced designers did. Basically what design patterns do is to tell you what these developers have done. But, just reading about it isn't enough. You become a master by mimicking the work of excellent developers. ….. Not only do you learn about a particular development process you will also learn how to communicate about a design in a group of developers. As a good designer you not only come up with good designs you also communicate and defend them. You have to practice, like an apprentice in a way. Over time you'll become as experienced as experienced designers.
作为一个新手,就算理解了GoF中的所有设计模式,也还是不够的,重要的,要知道,在什么时候,什么情况下,使用什么样的patterns。 而这往往是非常难的。 通常只有完成了之后,仔细思考自己的设计和代码的时候才会发现需要使用某个模式,或者某一种模式使用错了。 这个时候,就需要使用“重构”技术,来应用你觉得正确的模式。 只有练习再练习。
记住这句话:look to the master, follow the master, walk with the master, see through the master, become the master…
第一部分
第二部分
第三部分
Eclipse