Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][OOP] Galeria objektowo, Jaki wzorzec?
Quentino
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 17.02.2007

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


Witam

Robie prosta galerię w PHP i MySQL.
Buduję ją obiektowo.
Jej struktura wygląda tak:

Klasa Photo dziedziczy z klasy genericObject
Klasa generictObject to chyba to samo, co activeRecord, ja swoją nazwę wziąłem z książki: PHP5 zaawansowane programowanie, (jeśli to nie jest to samo to proszę o wyjaśnienie).
Klasa genericObject reprezentuje jeden wiersz z tabeli (w tym przypadku jest to tabele Photos).
Mam też klasę genericObjectCollection, która w moim przypadku jest kolekcja klasy Photo i implementuje, jak to w książce nazwano ‘leniwą konkretyzacje’.
Klasa, która łączy te elementy w całość to klasa Galery, która posiada metody np. getPhotosByCategory(), getPhotosById(), getAllPhotos(), AddPhoto(), DeletePhoto(), MakeMiniPhoto().
Jest tez klasa uploader, która pozwala na załadowanie zdjęcia na serwer.

Przykład działania:
Za pomocą metod klasy uploader umieszczam zdjęcie w odpowiednim katalogu na serwerze.
Jeśli ta operacja się powiedzie tworzy się egzemplarz klasy Gallery, do którego przekazywana jest ścieżka pliku oraz dane z formularza takie jak opis, kategoria itp.
Klasa Gallery tworzy też miniaturkę zdjęcia i dopasowuje docelowe zdjęcie do zadanych parametrów (rozmiar, jakość kompresji).
Jeśli operacja dostosowania zdjęcia lub zapis informacji do bazy nie powiedzie się, to zostaje wygenerowany wyjątek, który oprócz komunikatu usuwa również plik zdjęcia z serwera.

Oprócz tego co napisałem są jeszcze klasy takie jak kategorie zdjęć itp.
Mam pytanie czy taka konstrukcja jak tu przedstawiłem ma sens?
W jaki sposób można tym jakoś elegancko zarządzać, żeby nie trzeba było używać np. switch ,które z zależności co jest przekazywane przez tablicę $_GET[] wykonuje odpowiednie działanie. Czy jest do tego jakiś wzorzec projektowy który by do tego pasował?
Go to the top of the page
+Quote Post
plisek
post
Post #2





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 28.08.2005

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


wzorzec to sposób myslenia, a nie gotowy kod. to jest pewiem sposób rozwiazania jakiegoś problemu, zatem musisz postawić sobie pytanie 'gdzie jest problem??" i do tego szukać odpowiedzi .

co sie tyczy Twojego rozumowania, to moim zdaniem mozna to oprogramować i powinno działać. Wszytsko zależy od tego jak to zrobisz tongue.gif
możesz wykorzystać wzorzec MVC, fabryki obserwatora i wiele innych, pytanie tylko dlaczego winksmiley.jpg

dobrym sposobem jest przyjrzenie się, już gotowym skryptom galerii i przesledzenie toku rozumowania ich autorów. np. 1 2

pozdr

Ten post edytował plisek 21.03.2007, 19:07:16


--------------------
ThE EnD oF ThE InTErnEt !
pasy zabezpieczające
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 Aktualny czas: 19.08.2025 - 19:55