Witam,
mam taką sytuację w kodzie: jest klasa dokument CDocument
, która zawiera w sobie kilkanaście obiektów klasy wykres CWykres
. Aktualnie jest tak że w klasie CDocument
tworzę te wszystkie obiekty klasy CWykres
CWykres w1 = new CWykres()
Jak można by zrobić to lepiej, ładniej?
W przyszłości mogą dojść jeszcze inne wykresy.
Chciałbym w klasie CDocument
zrobić np. pętle żeby wykresy same się narysowały a nie edytować klasę jak dojdzie nowy wykres.
Po pierwsze - YAGNI. Nie próbuj rozwiązywać problemów na zapas, jeśli jeszcze ich nie ma.
Ale jeśli faktycznie z jakiegoś powodu chcesz to zrobić teraz, to pytanie się sprawadza do jednego: Czy tworzenie new CWykres()
wymaga jakichś danych z CDokument
? Jeśli nie, to możesz zrobić tak jak pisze @Miang i po prostu przekazać kolekcję z CWykres
, nie będzie nic złego w tym podejściu.
Ale jak mówiłem - lepiej to zostawić na później, gdyby będziesz miał taką potrzebę. Jeśli jej nie masz to niepotrzebnie komplikujesz kod - dodajesz elementy do kodu które nie są potrzebne, więc są komplikacją.