Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php 5.1] Pisać osobne klasy czy dziedziczenie?
szczurek
post
Post #1





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 1.10.2006
Skąd: Bydgoszcz

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


Witam,

Mam pytanie. Na stronie będę musiał zarządzać takimi częściami jak Uzytkownik, Autor, Utwor, Komentarz, News

No i dla każdego zamierzam napisać klasę z metodami tylko, że poza innimi metodami wszystkie zawierają wspólne:
  • doaj
  • pobierz
  • aktualizuj
  • usun

Jeszcze sprawdz dane, ale to będzie na pewno metoda prywatna.

Zastanawiam się czy mam kombinować z napisaniem jakiejś klasy zawierającej te 4 metody i później klasy uzytkownik, autor itd. Mają dziedziczyć z tej klasy modyfikując właściwie pola które dodają czy pobierają czy każda klasa ma zawierać pisane od początku metody i tylko mają implementować interface który zawiera abstrakcyjne metody dodaj, pobierz, aktualizuj i usun.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
athabus
post
Post #2





Grupa: Zarejestrowani
Postów: 898
Pomógł: 48
Dołączył: 2.11.2005
Skąd: Poznań

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


Ja zgodzę się z Cysiaczkiem - najlepiej w takich przypadkach zazwyczaj użyć Interfejsu - wtedy możesz w razie konieczności sprawdzać czy dany obiekt implementuje dany interfejs (np. gdy gdzieś w innym miejscu aplikacji będzie metoda mogąca brać dowolne obiekty, które implementują te metody).

Z Twojego opisu sytuacji wnioskuje jednak, że poza takimi samymi nazwami metod nie idzie za nimi większa abstrakcja, więc pytanie czy w ogóle jest sens tutaj wprowadzać jakiekolwiek zależności.

Pamiętaj, że dziedziczenie nie powstało po to aby "zaoszczędzić pisania", a żeby pozwalać na różne poziomy abstrakcji i ułatwiać pisanie/rozbudowywanie kodu. Dziedziczenie na siłę klas, które nie są logicznie powiązane powoduje zazwyczaj tylko bałagan w kodzie i problemy z jego utrzymaniem.

//edit

No może tutaj można zrobić specjalny obiekt, który będzie operował na bazie i będzie pozwalał na dodawanie / usuwanie /modyfikowanie/odczytywanie poszczególnych danych - coś jak Active Record Pattern

Ten post edytował athabus 4.01.2007, 17:32:17
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: 15.10.2025 - 18:16