decorator.txt 547 B

12345678910111213141516171819202122232425262728293031323334
  1. @startuml
  2. /' DECORATOR '/
  3. interface Component {
  4. # operation()
  5. }
  6. class ConcreteComponent {
  7. + operation()
  8. }
  9. class Decorator {
  10. #operation()
  11. - private_component
  12. }
  13. class ConcreteDecorator {
  14. + operation()
  15. }
  16. Component <|-- ConcreteComponent
  17. Component <|-- Decorator
  18. Component --* Decorator
  19. Decorator <|- ConcreteDecorator
  20. note as N1
  21. <b><color:royalBlue>Decorator</color></b>
  22. <b>Type:</b> Structural
  23. Permet d'étendre un objet sans héritage mais
  24. en ajoutant une méthode de manière dynamique.
  25. end note
  26. @enduml