From 2ad93f4b910a2fbc245aafdd3e643b1dc21e6dae Mon Sep 17 00:00:00 2001 From: Namu Date: Thu, 2 Oct 2025 09:57:39 +0200 Subject: [PATCH] Doc: Add a text explaining why I won't implement de decorator pattern --- src/Main.java | 2 -- src/utils/BaseDecorator.java | 14 ++++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/Main.java b/src/Main.java index c0e0777..5be563b 100644 --- a/src/Main.java +++ b/src/Main.java @@ -1,5 +1,3 @@ -import utils.NotificationManager; - void main(String[] args) { final var app = new Application(); app.run(); diff --git a/src/utils/BaseDecorator.java b/src/utils/BaseDecorator.java index 0d8ee16..cddfa07 100644 --- a/src/utils/BaseDecorator.java +++ b/src/utils/BaseDecorator.java @@ -2,6 +2,20 @@ package utils; import entities.Notification; +/** + * Ces approches ne seront pas implémentées ici, car elles pourraient alourdir le code sans apport clair. + * Par exemple, un builder pourrait être utile pour construire des notifications (objets complexes), + * ou des stratégies pourraient être envisagées pour des fonctionnalités comme la datation. + * Les design patterns ne sont pas des solutions universelles : leur utilisation doit être justifiée par un besoin concret. + + * Le code actuel ne respecte pas pleinement les principes SOLID, ce qui peut rendre sa maintenance plus difficile. + * L'ajout de patterns comme le Singleton (considéré comme un anti-pattern dans certains contextes, + * notamment parmi les principes STUPID) ne résoudrait pas nécessairement ces problèmes. + + * Pour s'entraîner, les Katas sont une excellente alternative : ce sont des exercices simples et variés, + * idéaux pour explorer les design patterns de manière propre et progressive. + * Ils permettent aussi de comparer différentes solutions pour un même problème, ce qui est très formateur ! + */ public abstract class BaseDecorator { protected Notification notification;