Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> superklasy, za i przeciw
CuteOne
post
Post #1





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


Witam,

chciałbym poznać waszą opinię na temat superklas. Ponieważ ostatnio babrałem się w IPB zauważyłem, że wykorzystuje on taką klasę gdzie można było znaleźć praktycznie wszystko. Stąd moje pytanie [czysto retoryczne]- czy warto pakować się w superklasy?

ps. dla jasności dodam, że chciałbym wykorzystać takową klasę przy tworzeniu panelu admina [coś na wzór grida]

Pozdrawiam

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dariuszp
post
Post #2





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 9.09.2010

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


Chodzi Ci dokładnie o superklasę do wszystkiego czy superklasę mającą wszystko ? Widziałem podejście gdzie jedna wielka klasa obsługiwała bazę danych, użytkownika, newsy itp...
Autorowi grzecznie napisałem że to co robi to programowanie funkcyjne czy jak to tam nazwać. Wystarczyło usunąć sprzed nazw metod nazwy obiektów ($obj->metoda() zamienic na metoda()), potem z klasy wywalić class ... { i public, private itp i masz... zestaw funkcji. Więc jak widzisz, podejście głupie, bezsensowne i nie mające nic wspólnego z OOP.

Co innego klasa mająca wszystko. W rozbudowanym systemie na ogół mamy tzw rdzeń i całą resztę która go otacza. Poszczególne możliwości są rozbite na moduły. Ale... obsługa sesji, uwierzytelnianie, obsługa bazy danych, obsługa formularzy i inne standardowe akcje systemu są wykorzystywane przez moduły i ogólnie przez wszystko co ten rdzeń otacza. Więc wygodnym sposobem jest zrobić klasę takiego rdzenia systemu gdzie masz dostęp do jego mechanizmów.
Tylko że taki rdzeń nie jest klasą od wszystkiego tylko zbiorem klas wykonujących różne rzeczy w tym systemie.

Jak określić co powinno się znaleźć w takim "rdzeniu" ? Nic prostszego. Zbierz wszystkie elementy systemu które są stałe i które nie będą wymagać modyfikacji dla poszczególnych modułów dla przykładu. Są to najczęściej takie mechanizmy jak obsługa sesji, bazy danych itp.
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: 5.10.2025 - 03:03