From b47649d1c4ea7782f3af5700d1ce3ac2983a3352 Mon Sep 17 00:00:00 2001 From: lorenzo7377 Date: Fri, 1 Dec 2023 20:47:20 -0300 Subject: [PATCH] Diagrama observer --- .../Artefatos/Observer/Observer.md | 12 ++++++++++++ docs/Assets/Observer/observerDiagram.png | Bin 0 -> 20736 bytes 2 files changed, 12 insertions(+) create mode 100644 docs/Assets/Observer/observerDiagram.png diff --git a/docs/ArquiteturaReutilizacao/Artefatos/Observer/Observer.md b/docs/ArquiteturaReutilizacao/Artefatos/Observer/Observer.md index 50d6ff3..cde0d8b 100644 --- a/docs/ArquiteturaReutilizacao/Artefatos/Observer/Observer.md +++ b/docs/ArquiteturaReutilizacao/Artefatos/Observer/Observer.md @@ -8,6 +8,7 @@ | :--------: | :--------: | :------------------------------: | :----------------------------: | | 0.1 | 30/11/2023 | Criação do documento | Pedro Lucas, Lorenzo e Eduardo | | 0.2 | 30/11/2023 | Adição de Código C++ do Obersver | Pedro Lucas, Lorenzo e Eduardo | +| 0.3 | 1/12/2023 | Adição do diagrama do Obersver | Lorenzo | _Tabela 1: Versionamento_ @@ -39,6 +40,17 @@ Está dividio em 3 arquivos e 2 bibliotecas: - main.cpp: É o código cliente que irá se comunicar com os observer e subject; - observer.h e subject.h: Contém as assinaturas e classes utilizadas. +## Diagrama + +
+ CLIQUE PARA EXIBIR O DIAGRAMA + +![Strategy_Code](../../../Assets/Observer/observerDiagram.png) + +*Figura 1: Diagrama Observer* + +
+ ## Código Desenvolvido [!NOTE] diff --git a/docs/Assets/Observer/observerDiagram.png b/docs/Assets/Observer/observerDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..4158bfc10c275e1275f2e745cab7b183b4ff5524 GIT binary patch literal 20736 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 literal 0 HcmV?d00001