[Symfony][OOP]Gdzie umieścić złożoną logikę - kilka klas zgodnych z SOLID? |
[Symfony][OOP]Gdzie umieścić złożoną logikę - kilka klas zgodnych z SOLID? |
9.01.2021, 11:12:34
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 9.01.2021 Ostrzeżenie: (0%) |
Witam,
mam kilka klas połącząnych, załóżmy, według wzorca Mediator, który skłąda się z conajmniej dwóch interfejsów i 4 klas. Jak wiadomo, standardem jest: jedna klasa, jeden plik. Gdzie umieścić te pliki i jak łączyć klasy zgodnie ze standardami?:
z góry dziękuję za wskazówki. Pozdrawiam |
|
|
11.01.2021, 22:18:39
Post
#2
|
|
Grupa: Zarejestrowani Postów: 531 Pomógł: 55 Dołączył: 3.01.2016 Skąd: Łowicz Ostrzeżenie: (0%) |
Mediator to serwis, który jest np. w folderze src/Service, ja tak grupuję serwisy.
Mam projekty, które mają sporo serwisów/kontrolerów, więc nie przejmuj się ilością plików dasz radę to ogarnąć. U mnie często klasa ma swoją unikalną nazwę z sufixem zależnym od tego czym jest, czyli np: src/Service/MediatorService.php src/Interface/MediatorInterface,php src/Abstract/MediatorAbstract.php src/Helper/MediatorHelper.php src/Manager/MediatorManager.php src/Event/MediatorEvent.php Taki sufix ułatwia mi DI i łatwiejsze rozeznanie się w kodzie. mam kilka klas połącząnych, załóżmy, według wzorca Mediator, ... Gdzie umieścić te pliki i jak łączyć klasy zgodnie ze standardami?: Piszesz że masz połączone, a jednocześnie pytasz się jak łączyć? Chodzi Ci o to jak wstrzyknąć je do Serwisu a następnie jak wywołać serwis w kontrolerze? Ten post edytował LowiczakPL 11.01.2021, 22:24:47 -------------------- Szukam zleceń Symfony, Laravel, Back-End, Front-End, PHP, MySQL ...
|
|
|
12.01.2021, 19:32:10
Post
#3
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 9.01.2021 Ostrzeżenie: (0%) |
Bardzo dziękuję za odpowiedź.
Mediator podałem jako przykład na którym się wzorowałem. Chodzi o dowolny system klas. To co mam to nie jest mediator, tylko taki schemat (pewnie to nie żaden wzorzec): Kolejność działań (wraz z kodem) jest opisana tutaj: Link do aplikacji (github.pl) opis wywołań jest w podkatalogu Tests. src/Service/MediatorService.php src/Interface/MediatorInterface,php src/Abstract/MediatorAbstract.php src/Helper/MediatorHelper.php src/Manager/MediatorManager.php src/Event/MediatorEvent.php Taki sufix ułatwia mi DI i łatwiejsze rozeznanie się w kodzie. jeśli się da, to spróbuję dać te podkatalogi do podkatalogu src/Service lub jeszcze innego. Piszesz że masz połączone, a jednocześnie pytasz się jak łączyć? Mam połączone ze sobą, ale bez Symfony. W czystym PHP na klasach, z Twig'iem. Chodzi Ci o to jak wstrzyknąć je do Serwisu a następnie jak wywołać serwis w kontrolerze? dokładnie. W ciągu kilku dni (obecnie nie mam zbytnio czasu) postaram dostarczyć do oceny rozwiązanie według Twoich wskazówek, ale czuję że będę miał jeszcze pytania (jeśli nię męczę za bardzo...). jeszcze raz dziękuję i pozdrawiam. |
|
|
Wersja Lo-Fi | Aktualny czas: 28.04.2024 - 03:03 |