composite.txt 738 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. @startuml
  2. /' COMPOSITE '/
  3. interface Component {
  4. - m_name
  5. # operation()
  6. # add(in c : Composite)()
  7. # remove(in c : Composite)
  8. # getChild(in i : int)
  9. # enumerate()
  10. }
  11. class Leaf {
  12. - privage_id
  13. + operation()
  14. + enumerate()
  15. }
  16. class Composite {
  17. - private_children vector
  18. + operation()
  19. + add(in c : Composite)()
  20. + remove(in c : Composite)
  21. + getChild(in i : int)
  22. + enumerate()
  23. }
  24. Component <|-- Leaf
  25. Component <|-- Composite
  26. Component --* Composite
  27. note as N1
  28. <b><color:royalBlue>Composite</color></b>
  29. <b>Type:</b> Structural
  30. Assemblage d'objets dans une structure
  31. arborescente, l'idée est de banaliser
  32. l'accès - unitaire ou de groupe d'objet.
  33. end note
  34. @enduml