Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> PHP OOP Jedna instancja klasy w nowoczesnym programowaniu.
Fred1485
post
Post #1





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

Ostrzeżenie: (0%)
-----


W dobie "nowoczesnego programowania", gdzie Singletony są uważane za zło jak rozwiązalibyście Panowie/Panie taki problem?

Mam jedną klasę abstrakcyjną, po której dziedziczą dwie pochodne. Istnieje także klasa pomocnicza, która nie wykonuje dużo pracy, lecz przy tworzeniu instancji pewne czynności są wykonywane.
Klasy pochodne mają dostęp do klasy pomocniczej poprzez prywatne właściwości. Jednak przy tworzeniu nowych instancji tych klas stworzona zostanie też nowa instancja klasy pomocniczej. Nie ma nic złego w tym, że tych kilka egzemplarzy będzie, lecz gdy klas pochodnych będzie około 30 to niepotrzebie w konstruktorze klasy pochodnej będą wykonywane działania spowolniające troszkę system. Wiadomo nie będzie to kosmiczna liczba sekund, pewnie nawet nie do zauważenia dla normalnego użytkownika, ale po co uczyć się złych nawyków. Słyszałem o Service Containerach itp. ale projekt jest malutki. Nie wiem czy się na to porywać.

Ten post edytował Fred1485 27.07.2016, 17:00:50
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
viking
post
Post #2





Grupa: Zarejestrowani
Postów: 6 381
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Sprawdź jak ci się zmieni czas wykonywania po zastosowaniu SM i czy będzie się lepiej pracować. Możesz użyć https://github.com/zendframework/zend-servicemanager (w zależnościach tylko Container Interop).
Minus. Trzeba trochę czasu poświęcić na naukę i zapoznanie się z dokumentacją. Plus. Jedna instancja klasy, którą można dowolnie manipulować (abstrakcyjne fabryki, delegatory), nowoczesne, świetne do testów.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 15:11