![]() ![]() |
Post
#21
|
|
|
Grupa: Zarejestrowani Postów: 663 Pomógł: 6 Dołączył: 3.06.2007 Skąd: Kraków Ostrzeżenie: (0%)
|
Taki obiekt konfiguracyjny były również singletonem prawda? Podobnie jak driver bazy danych ?
|
|
|
|
Post
#22
|
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. |
To już od Ciebie zależy. Może być sigletonem, ale nie musi
|
|
|
|
Post
#23
|
|
|
Grupa: Zarejestrowani Postów: 57 Pomógł: 12 Dołączył: 6.01.2008 Skąd: Wrocław Ostrzeżenie: (0%)
|
Ja w tym celu tworzę sobie obiekt globalny w tablicy GLOBALS i w celu skrócenia kodu odwołuję się do niego przez funkcję (nie będącą w żadnej klasie):
Jeżeli zależy nam na singletonie to można oczywiście zastosować zwykły singleton i dopisać sobie taką funkcję:
Idea polega na tym aby skrócić kod odwołania. Prościej i szybciej jest używać sql()->query() niż Sql::getInstance()->query(); Jeżeli chodzi o tworzenie obiektu nadrzędnego, po którym będą dziedziczyły wszystkie inne to nie polecam tego rozwiązania. W pewnym sensie zmusza ono programistę do dziedziczenia po tej klasie co może czasami okazać się niewygodne. |
|
|
|
Post
#24
|
|
|
Grupa: Zarejestrowani Postów: 663 Pomógł: 6 Dołączył: 3.06.2007 Skąd: Kraków Ostrzeżenie: (0%)
|
no to teraz mi już namieszałeś totalnie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Znacznie bardziej podoba mi się Twoje rozwiązanie, ale poprzednicy twierdzili zupełnie inaczej.
Przy okazji nasuwa mi się pytanie. Skoro znacznik global ma zostać usunięty z PHP w przyszłości to jak to się ma do tablicy $GLOBALS? tez ma zostać usunięta ? |
|
|
|
Post
#25
|
|
|
Grupa: Zarejestrowani Postów: 984 Pomógł: 41 Dołączył: 16.03.2002 Skąd: Płock Ostrzeżenie: (0%)
|
No pewnie, że namieszał.
Jeżeli chcesz przechowywać dane konfiguracyjne to zapoznaj się ze wzorcem Registry. Jeżeli chcesz skrócić sobie notację, możesz utworzyć metodę-osłonkę w swojej klasie:
Ten post edytował em1X 17.02.2008, 12:49:50 |
|
|
|
Post
#26
|
|
|
Grupa: Zarejestrowani Postów: 663 Pomógł: 6 Dołączył: 3.06.2007 Skąd: Kraków Ostrzeżenie: (0%)
|
@em1X tego typu osłonka sprawdza się świetnie. Wielkie dzięki za sugestie. @Cotter Za pomysł ze skróceniem notacji też dziękuję. Wydaje mi się jednak, że obiekt po którym dziedziczą wszystkie inne obiekty to dobry pomysł bo mogę sobie podpinać wtyczki do całego systemu w bardzo wygodny sposób. O to co udało mi się sklecić. Proszę o komentarze.
Ten post edytował Black-Berry 17.02.2008, 15:38:05 |
|
|
|
Post
#27
|
|
|
Grupa: Zarejestrowani Postów: 984 Pomógł: 41 Dołączył: 16.03.2002 Skąd: Płock Ostrzeżenie: (0%)
|
1) dużo lepiej niż było na początku (IMG:http://forum.php.pl/style_emoticons/default/czarodziej.gif)
Trzeba pisać, pisać i pisać.. wszystko opiera się na doświadczeniu. 2) proponuję kupić sobie tą książkę. Na pewno Ci się przyda, bo wszystko u czym tutaj pobieżnie pisaliśmy, w tej książce jest opisane od podstaw, zaczynając od wzorców projektowych i ciekawych metod programowania obiektowego. |
|
|
|
Post
#28
|
|
|
Grupa: Zarejestrowani Postów: 663 Pomógł: 6 Dołączył: 3.06.2007 Skąd: Kraków Ostrzeżenie: (0%)
|
boje się że mi życia na naukę braknie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Dzięki wielkie. Zaopatrzę się w nią bo doszedłem chyba do etapu w którym trzeba zmienić swój punkt widzenia o programowaniu w PHP.
Pozdrawiam. Ten post edytował Black-Berry 17.02.2008, 17:01:24 |
|
|
|
![]() ![]() |
|
Aktualny czas: 3.01.2026 - 18:15 |