Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 从UML图中找到设计模式?_Design Patterns_Uml - Fatal编程技术网

Design patterns 从UML图中找到设计模式?

Design patterns 从UML图中找到设计模式?,design-patterns,uml,Design Patterns,Uml,这是java AWT包的一部分: 看起来容器是一个装饰器模式,其中容器是装饰器,面板和窗口子类是具体的装饰器,装饰器有一个指向组件的指针,textField和textArea是具体的组件 另一个我认为是模板方法模式,位于TextComponent、TextField和TextArea之间 我想说LayoutManager是一个抽象的工厂,但我不是100%确定。LayoutManager是定义推送到组件上的不同布局的接口。。也许是观察者模式 我认为什么是正确的?显然还有其他人,但我找不到他们是

这是java AWT包的一部分:

  • 看起来容器是一个装饰器模式,其中容器是装饰器,面板和窗口子类是具体的装饰器,装饰器有一个指向组件的指针,textField和textArea是具体的组件

  • 另一个我认为是模板方法模式,位于TextComponent、TextField和TextArea之间

  • 我想说LayoutManager是一个抽象的工厂,但我不是100%确定。LayoutManager是定义推送到组件上的不同布局的接口。。也许是观察者模式


我认为什么是正确的?显然还有其他人,但我找不到他们是什么

布局经理是战略模式。我不明白一个容器是如何成为一个装饰者的。如果有什么的话,我会认为它是一个复合材料,但它看起来也不是那样。装饰者是冒名顶替者:它以另一种类型呈现自己,然后对原始类型进行扩充。

这是家庭作业吗?此外,设计模式不仅仅是结构。它们有上下文(它们解决的问题)和行为(实现调用时的动态)。这其中的大部分不仅仅来自类图。可以在此处找到一些提示:请参阅此处的注释: