@startuml /' COMMAND '/ class Invoker { - private_command + setCommand() + executeCommand() } class Receiver { + action() } interface Command { # execute() } class ConcreteCommand { - private_receiver + execute() } hide empty members Invoker *-- Command Receiver --* ConcreteCommand ConcreteCommand -|> Command note as N1 Command Type: Behavioral Encapsule une commande dans un objet, découple le client du fournisseur. end note @enduml