Rejestr vs Singleton vs global, co jest lepsze |
Tematy na forum Pro mogą zakładać jedynie moderatorzy. W otwartych tematach może pisać każdy, kto ma coś fachowego do powiedzenia. Wszystkie posty nie wnoszące nic do tematu będą natychmiast usuwane, a ich autorzy dostaną ostrzeżenie.
Jeśli uważasz, że jakiś temat jest warty dyskusji na tym forum, zgłoś go w temacie Propozycje.
Rejestr vs Singleton vs global, co jest lepsze |
21.07.2007, 19:22:47
Post
#1
|
|
Grupa: Zarejestrowani Postów: 20 Pomógł: 0 Dołączył: 31.01.2007 Ostrzeżenie: (0%) |
Singleton to takie zmienne superglobalne, utrudniające dodatkowo podmianę pojedynczego komponentu systemu na inny. Jeżeli po prostu użyć zmiennych globalnych (albo nawet rejestru) można przypisać do danej zmiennej/pozycji instancję dowolnej klasy o dowolnej nazwie która ma po prostu określony API współpracujący z danym komponentem. Jeżeli jednak system używa Singletonu to nie jest to możliwe - konieczna jest albo modyfikacja danego komponentu albo utworzenie nowej klasy o nazwie takiej, jakiej rząda ten komponent.
Rejestr działa identycznie jak zmienne globalne, ale jest dużo mniej wygodny w obsłudze i na dodatek jest wolniejszy niż wbudowane w PHP zmienne globalne. Zmienne globalne też jakimś idealnym rozwiązaniem nie są, ale lepszego po prostu w PHP nie ma. Dlatego właśnie ich używam. @bim2 @BTW: tak Ten post edytował LEW21 21.07.2007, 19:23:39 -------------------- Przyjazne użytkownikom polskie wsparcie phpBB3 - phpBB3.PL
|
|
|
28.08.2007, 22:13:48
Post
#2
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 18 Dołączył: 6.03.2006 Skąd: Szczecin Ostrzeżenie: (0%) |
@zimi: w Javie nie ma zadnych przedrostkow przed zmiennymi typu $ zeby odroznic, czy dany identyfikator jest nazwa klasy czy zmiennej, po prostu dana nazwa musi byc unikalna i na podstawie tego do czego sie odnosci wykonuje sie kod. w PHP musi byc wyraznie powiedziane, czy odwolujesz sie do klasy, czy do obiektu.
co do samych metod statycznych - glowna przeszkoda bylo to, ze we wczesnych wersjach PHP 5 wywolania statyczne byly znacznie wolniejsze od dynamicznych przez co o wiele lepiej bylo nawet za kazdym razem pobierac singleton i wykonywac operacje na instancji, a nie statycznymi metodami klasy. @MalCom: ale w C++ (i C, bo tam tez sa skladowe struktur) sytuacja jest diametralnie inna >.<. tam zarowno oepratory . jak i -> odnosza sie do dynamicznych skladowych, tylko zaleznie od tego czy istancji, czy wskaznika. -------------------- Wrzasq.pl
Tworzenie stron i aplikacji internetowych. Chillout Development - tworzenie stron i aplikacji internetowych. |
|
|
Wersja Lo-Fi | Aktualny czas: 18.04.2024 - 02:15 |