![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 945 Pomógł: 7 Dołączył: 15.03.2005 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
mam takie pytanie.
Tworze np obiket Doc(); przekazuje do niego kilka parametrów i wywołuje 1 metode. teraz chce wywyłać tę samą metodę z innymi parametrami. czy takie podejście jest dobre. chce uniknąc ze jakies parametru np sie nadpiszą czy coś..
Ten post edytował acztery 3.04.2007, 11:24:59 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
czy takie podejście jest dobre. chce uniknąc ze jakies parametru np sie nadpiszą czy coś.. Nie lepiej stworzyć klasy dziedziczące po Doc? Kod by się uprościł, stał bardziej logiczny. Nie piszę, że to co zrobiłeś jest złe, do czegoś klonowanie obiektów musi służyć. edit: Albo jeszcze lepiej niż dziedziczyć, byłoby zagregować (kompozycja) Doc() w tych nowych klasach. Ten post edytował LBO 3.04.2007, 11:36:47 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 945 Pomógł: 7 Dołączył: 15.03.2005 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
LBO jak w nowych klasach cały czas korzystam z 1 new Doc żadne inne mi są nie potrzebnę, klasa doc już dziedziczy z inne klasy User.
wiec co ma namyśli pisząc "w tych nowych klasach" |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Jak dla mnie wprowadziłeś za dużą abstrakcję tzn. Jedna klasa obsługuje "Cytaty", "Artykuły" etc. a co za tym idzie musisz za każdym razem ustawiać swój obiekt, żeby pobrał odpowiednie rzeczy.
Ja stworzyłbym odpowiednie klasy Articles, Citation i co tam jeszcze masz. A jak to zależy od ciebie - możesz dziedziczyć po Doc, albo jak zreflektowałem później, zagregować. edit: Cytat klasa doc już dziedziczy z inne klasy User. Dokument dziedziczy po użytkowniku? Ten post edytował LBO 3.04.2007, 11:51:38 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 945 Pomógł: 7 Dołączył: 15.03.2005 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
nie z ty dziedziczeniem nie po użytkowniku tylko po innej klasie gdzie np mogę ustawić nazwę tabeli itp ale mało istotne.
a jak miał bym takich drobnych rzeczy 100 to co mam tworzyć 100 klas... wszystkie te dane są przechowywane w 1 tabeli bazie danych documents każdy dokument może być w kategorii i mieć różne opcje. Cytat jest traktowany jako dokument który jest w kategorii Cytaty itd. Czy klonowanie spowalnia w jakimś stopniu działanie kodu. Ps myślę ze lepiej klonować niż inicjować klasę na nowo. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
a jak miał bym takich drobnych rzeczy 100 to co mam tworzyć 100 klas Niekoniecznie, ja tylko daję wg mnie dobrą radę. I tak wszystko zależy od Ciebie. Ewidentnie klonujesz, po to, żeby mieć mniej do wklepywania, ja tylko powiedziałem jak to ułatwić, o! Ps myślę ze lepiej klonować niż inicjować klasę na nowo. To ja myślę, że lepiej dziedziczyć, niż klonować. Sumarycznie, tak czy siak, przybędzie jeden obiekt w pamięci,a jako programista nie musisz się martwić "ustawianiem" obiektu. //edit a'propos a jak miał bym takich drobnych rzeczy 100 to co mam tworzyć 100 klas Są Obiekty i obiekciki, w twoim wypadku Dokumenty i dokumenciki ![]() Ten post edytował LBO 3.04.2007, 12:07:37 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 14:14 |