Referencja do klasy w innej klasie |
Referencja do klasy w innej klasie |
8.02.2008, 11:05:51
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 657 Pomógł: 125 Dołączył: 29.04.2006 Ostrzeżenie: (0%) |
Witam. Piszę CMS'a i mam pewien problem:
Aby w kontrolerze mieć dostęp do wszystkich bibliotek itp. dodaję "extends Controller". Zanim jednak "odpalę" kontroler, wczytuję bibliotekę URL (która jest klasą), żeby sparsować "przyjazne URL'e". Chciałbym mieć do niej dostęp w klasie Controller. Ale po co dwa razy wykonywać bibliotekę? No właśnie, bez sensu. Jak to obejść? Pozdrawiam. Ten post edytował radex_p 8.02.2008, 11:08:57 -------------------- |
|
|
8.02.2008, 11:12:11
Post
#2
|
|
Grupa: Zarejestrowani Postów: 487 Pomógł: 7 Dołączył: 7.01.2004 Skąd: Warszawa Ostrzeżenie: (0%) |
W twoim przypadku dziedziczenie jest jak najbardziej ok.
Zainwestuj we FrontController: Core J2EE Patterns - Front Controller WACT: Front Controller -------------------- Łukasz Dywicki
Independent Java and open source software consultant. Blog - Java, OSGi, integracja oprogramowania.. |
|
|
8.02.2008, 11:24:52
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 657 Pomógł: 125 Dołączył: 29.04.2006 Ostrzeżenie: (0%) |
poradziłem sobie, ale w okropny sposób, więc zainteresuję się tym - przynajmniej czegoś nowego się nauczę
Zrobiłem to tak: w konstruktorze klasy Controller: global $_cms; $this->url = &$_cms->url; Dzięki za podpowiedź. -------------------- |
|
|
8.02.2008, 11:31:11
Post
#4
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. |
Hm. To nawet nie jest okropny sposób, jest wręcz niedopuszczalny. Gdybyś miał mi zdawać kod, to byś dostał niezły opieprz
Jeśli nie Front Controller, to jeszcze zawsze zostaje singleton, lub lepiej - rejestr, do którego wrzuć obiekt URL (albo dane, które produkuje). Pozdrawiam -------------------- To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness; chaotic, confused, vulnerability, to inform yourself. Think for yourself. Question authority. |
|
|
8.02.2008, 12:04:53
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 657 Pomógł: 125 Dołączył: 29.04.2006 Ostrzeżenie: (0%) |
hehe Dlatego też szukam lepszego rozwiązania.
Front Controller o ile dobrze rozumiem jest skryptem, który ładuje odpowiedni moduł (kontroler), no i coś takiego mam (no chyba, że to trochę inaczej). Natomiast rejestr "wygląda" nieźle, zobaczymy EDIT: Dzięki za podpowiedź - użyłem Singletona, bo z Rejestrami jest za dużo roboty. Także podziękowania dla Athlana - http://athlan.vgroup.pl/singleton-registry-map/ -------------------- |
|
|
Wersja Lo-Fi | Aktualny czas: 9.05.2024 - 04:26 |