Padrões Comportamentais


Os padrões comportamentais são usados para gerenciar algoritmos e responsabilidades entre objetos e classes. Eles ajudam a garantir que as classes se comuniquem e cooperem de maneira eficiente e organizada, tornando o código mais fácil de ler e manter.

Padrões comportamentais cuidam da comunicação efetiva e atribuição de responsabilidades entre objetos.

Observer


Untitled

classDiagram
    class Subject {
        +registerObserver(Observer o)
        +removeObserver(Observer o)
        +notifyObservers()
    }
    class Observer {
        +update()
    }
    class ConcreteSubject {
        -observers: Observer[]
        +registerObserver(Observer o)
        +removeObserver(Observer o)
        +notifyObservers()
    }
    class ConcreteObserver {
        -subject: Subject
        +update()
    }
    Subject <|-- ConcreteSubject
    Observer <|-- ConcreteObserver
    ConcreteSubject --> Observer
    ConcreteObserver --> Subject

Command


O padrão Command encapsula uma solicitação como um objeto, permitindo que solicitações sejam transmitidas como objetos, armazenadas em logs, filas e suportando operações que podem ser desfeitas.

Ele consiste em cinco objetos: Receiver, Command, ConcreteCommand, Invoker e Client.