Diskuze: OPP
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 6 zpráv z 6.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Trosku líp popiš problém, čeho chceš vlastně dosáhnout? Těžko se navrhuje aplikace, když člověk nemá širší úhel pohledu. Například je opodstatněné, sby kolekce měla vlastní třídu? Proč není jedna třída s pěti kolekcemi? Neříkám, že to tak mudí být, záleží na situaci, proto se ptám na výsledek, co z toho má vzejít.
Nemusela by mít každá kolekce vlastní třídu, ale nepřijde mě zrovna šťastně řešné, kdybych měl onu Operační třída, která by kromě 5 vlastností s kolekcemi, obsahovala pro každou kolekci přibližně 3-4 metody na manipulaci s danou kolekcí (přidávání, změnu, mazání, přepočet na kolekci apod.). Kromě toho by Operační třída musela obsahovat ještě několik dalších metod, pro vzájemnou změnu na kolekcích (změní se jedna hodnota na kolekci, tak to ovlivní třeba nějakou hodnotu v jiné kolekci). V podstatě chci dosáhnout toho, aby bylo kódu v budoucnu snadné porozumět a možné s ním dál pracovat, a byl srozumitelný co se opp týče. Výstupem programu pak bude program, který bude pomocí dat v kolekcích provádět výpočty.
Je to takové hooooodně obecné. Kdybys napsal o co se konkrétně snažíš (protože kolekce můžeš použít téměř na cokoliv), tak by ti někdo i poradil, ale takhle, když nevíme, co z toho má vzejít, se poradit prostě nedá...
Já tedy nevím co chceš přesně udělat, ale třeba pokud chceš mít stejný přepis třeba pro kolekce, tak se používá navrhový vzor Iterator. Ten Ti dovoluje mít jednotný výstup pro kolekce různého typu, aniž bys musel ty kolekce měnit. Zkus to třeba popsat více konkrétněji ten problém co řešíš.
Možné by bylo i řešení, kdy bys vytvořil generickou třídu, kterou bys následně specifikoval pro každou kolekci. Poté třída, která s daty manipuluje, by brala pouze tuto generickou třídu a bylo by ti jedno, s kterou kolekcí manipuluješ - zredukoval by se ti počet metod, které potřebuješ. Z křišťálové koule se těžko vysvětluje.
Zobrazeno 6 zpráv z 6.