Skip to content

Avsaknad av Strategy Pattern för algoritmer och validering #36

@Akgun123

Description

@Akgun123

Flera delar av systemet innehåller komplex if-elselogik för att hantera olika algoritmer och regler. Detta gör koden svår att läsa, underhålla och utöka. Med Strategy Pattern kan olika algoritmer och valideringsregler kapslas in i separata strategier och väljas dynamiskt baserat på context.

  1. Problemområden

Availability checking innehåller hårdkodad logik som är svår att byta ut eller testa.
Price filtering implementeras med villkorslogik i stället för separata strategier.
Validation rules är fastkodade, vilket begränsar flexibilitet.
Search algorithms är inbyggda direkt i services.

Förslag till åtgärder
Introducera Strategy Pattern för att hantera:
Availability kontroller.
Filterstrategier (exempelvis pris, datum, plats).
Valideringsregler.
Sökalternativ/algoritmer.
Låt services ta emot rätt strategi via dependency injection.
Bygg ut med enhetstester för att säkerställa korrekt beteende hos varje strategi.

  1. Förväntad effekt

Eliminerar komplex och svåröverskådlig if-else-logik.
Systemet blir utbyggbart nya algoritmer och regler kan läggas till utan att ändra befintlig kod.
Förbättrad modularitet, testbarhet och flexibilitet.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions