Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [oop] Powiazania klas, pytanie natury filozoficznej
Seth
post 26.07.2004, 21:26:47
Post #1





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

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


Pisze wlasnie system ankiet i zastanawiam sie nad zaleznosciami klas.
Mam cos takiego:
Kod
Page
|
+-- SectionsList
     |
     +-- Section
         |
         +-- QuestionsList
             |
             +-- Question
                 |
                 +-- AnswersList
                     |
                     +-- Answer

To jest drzewko zaleznosci klas - np. SectionsList "zawiera sie" w Page i posiada liste obiektow Section. Zkolei Section posiada QuestionsList, ktora ma liste obiektow Question itd.

Teraz zastanawiam sie czy jest sens tworzyc klasy (kolekcje) *List czy moze lepiej zaimplementowac metody obslugi takiej listy na poziomie klasy w ktorej znajdowac sie bedzie obiekt *List.

Czyli np w Page dodac metody takie jak GetNextSection itp. zamist robic $Page->SectionsList->GetNext();

?
Go to the top of the page
+Quote Post
byther
post 27.07.2004, 09:19:25
Post #2





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 15.06.2004
Skąd: Warszawa

Ostrzeżenie: (10%)
X----


Cytat(Seth @ 2004-07-26 22:26:47)
Teraz zastanawiam sie czy jest sens tworzyc klasy (kolekcje) *List czy moze lepiej zaimplementowac metody obslugi takiej listy na poziomie klasy w ktorej znajdowac sie bedzie obiekt *List.

Czyli np w Page dodac metody takie jak GetNextSection itp. zamist robic $Page->SectionsList->GetNext();

?

Jedną z zasad OOP jest wzajemna niezależność klas/obiektów. Każdy obiekt operuje jedynie na własnych danych. Może to podpowie Ci rozwiązanie?


--------------------
Sygnaturka: jest
Go to the top of the page
+Quote Post
Seth
post 29.07.2004, 23:20:08
Post #3





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

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


W sumie racja. Tworzac ta strukturetrocheniespodobala mi sie ilosc klas stad mialem watpliwosci.
Dzieki.
Go to the top of the page
+Quote Post
hawk
post 30.07.2004, 09:33:23
Post #4





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

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


Może trochę OT, ale...

1) Czy potrzebne ci są te klasy kolekcji? W Javie dałbym zwykły ArrayList lub cokolwiek co jest odpowiednim kontenerem. Tzn. czy potrzebne ci jest np. SectionList jako osobna klasa? Gdyby dostarczała jakąś funkcjonalność większą niż typowa kolekcja, to tak. Ale jak nie?

2) Jak już OOP, PHP5 i iteratory (bo taki SectionList z metodą GetNext() jest iteratorem pełną gębą), to może zrobić te nowe iteratory wprowadzone w PHP5? Wtedy zamiast $Page->SectionsList->GetNext() byłoby foreach ($Page->$Sections as $Section) biggrin.gif
Go to the top of the page
+Quote Post
Seth
post 31.07.2004, 13:08:45
Post #5





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

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


Ad 1. Racja i tak tez zrobie.

Ad 2. Bedzie to pod php 4 dlatego iteratory odpadaja.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 01:34