![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 114 Pomógł: 0 Dołączył: 3.08.2017 Ostrzeżenie: (0%) ![]() ![]() |
Sorry, jeśli odpowiedź na moje pytanie jest banalna. Jednak szukam w Google i nie mogę nic znaleźć.
Chcę przekazywać parametrem metody stringi (np. 'NewClass'), na podstawie których będę tworzyć obiekty (np. $object = new NewClassModel()). Potem chcę te obiekty zwracać (return $object). Chodzi o to, aby to było uniwersalne. Jak to prosto zrobić? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 114 Pomógł: 0 Dołączył: 3.08.2017 Ostrzeżenie: (0%) ![]() ![]() |
Widzę, że źle zrozumiałem ostatnią zasadę SOLID. Zasada odwrócenia odpowiedzialności (ang. dependency inversion principle) mówi, iż wszystkie zależności powinny w jak największym stopniu zależeć od abstrakcji, a nie zależeć od konkretnego typu. Doszedłem do wniosku, iż typ object to najlepiej zapewnia. Dlatego stosowałem object praktycznie wszędzie. Rozumiem, iż mam stosować interfejsy. I tu mam pytanie: Po czym mogę określić, czy mam użyć typu object, interfejsu bądź konkretnej klasy?
Co do mojego kodu. Czy każdorazowe używanie, przy każdym wywołaniu dowolnej metody z repozytorium, metody getRepository() jest poprawne? Chodzi mi o to, iż wielokrotnie tworzony jest obiekt tego samego repozytorium... I jeszcze: Gdzie powinienem umieszczać interfejsy? Mogę je dodawać zbiorczo do katalogu Interface? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 02:45 |