Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Parametry metod w interfejsach, uniknięcie wymuszania konkretnych parametrów w metodach
Speedy
post
Post #1





Grupa: Zarejestrowani
Postów: 651
Pomógł: 28
Dołączył: 4.12.2004

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


hej, próbuję okiełznać częściowo php5 (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) i mam takie pytanie:

Czy da się w jakiś sposób implementować interfejs w danej klasie, ale tak, aby w tej klasie były wymagane tylko konkretne metody, które zawiera interfejs i żeby nie była wymuszana konkretna ilość argumentów dla tych metod? Wiadomo, że interfejsy wymagają utworzenia w klasie konkretnych metod z konkretną ilością parametrów. Ja chciałbym natomiast mieć taki interfejs, który będzie wymagał tylko tego, żeby w klasie znajdowały się metody o konkretnych nazwach, ale w różnych implementacjach będą one miały różną liczbę argumentów. Da się coś takiego zrobić?

Po prostu mam kilka klas, które mają takie same schematy nazewnictwa metod, ale czasami w niektórych metodach jest potrzeba podania większej ilości argumentów niż w innych klasach. Można to oczywiście uwzględnić w interfejsie i dodać parametry do wszystkich metod, ale wtedy te dodane parametry będą w niektórych miejscach w ogóle niewykorzystywane...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Speedy
post
Post #2





Grupa: Zarejestrowani
Postów: 651
Pomógł: 28
Dołączył: 4.12.2004

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


Odnośnie `RADY2`, to takie coś już zrealizowałem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) . Dziedziczę sobie jedną klasę w każdej z klas tzw. `modułów` (tak nazwałem klasy, które zawierają metody do operacji na danych w poszczególnych obszarach). Ta dziedziczona klasa, to sterownik bazy danych MySQL. btw. W ogóle chciałem zastosować wzorzec GenericObject, ale chciałbym (niestety) w jak najszybszym czasie wykonać to, co obecnie projektuję, a musiałbym ten wzorzec dokładnie obejrzeć przed zastosowaniem. Jak będę miał kiedyś trochę luzu, to sobie napiszę porządny framework (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) .
Wracając do interfejsów, to wydaje mi się rozsądnym ustawienie jednego interfejsu dla akurat tych klas, które mam, a parametry do metod planuję przesyłać jako tablicę (wtedy będzie we wszystkich metodach taka sama ilość parametrów i będą one kompatybilne z interfejsem). W tych klasach właściwie wszędzie są tylko operacje na danych i w niektórych miejscach tylko takie rzeczy jak przesyłanie/usuwanie plików.
Ten przykład z postgresem i mysql-em jest dobry, bo chyba właśnie o to chodzi w interfejsach (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Cóż, może moja filozofia na ich temat nie jest do końca słuszna... (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 2.10.2025 - 17:26