Design Issue
3 отговора
243 прегледа
Design Issue
Значи пиша тука едни истории. Ама дойде един момент дето нещо дизайна на класовете не ми харесва. Някво елементарно е, но се ровя и нещо не ми "изкача" подходящо решение.
та значи имаме обект от class Table
class Table {
somekindofcollection Rows;
public addRow(row) {
add-ва в колекцията
}
public Dosomething() {
foreach Rows.do();
}
}
само че в Row ми трябва някой метод на Table примерно
class Row {
public do() {
return 'blabla'+table.getName();
}
}
Направих го аз, като при добавяне на нов Row. Правя нещо от рода на
row.setTable(this);. Но не ми харесва нещо, а и като станат повече от 2 нивата трябва 2 референции да се предават и т.н .
Та ако някой е успял да ме разбере да предложе по изчистено решение :)Мерси предварително
та значи имаме обект от class Table
class Table {
somekindofcollection Rows;
public addRow(row) {
add-ва в колекцията
}
public Dosomething() {
foreach Rows.do();
}
}
само че в Row ми трябва някой метод на Table примерно
class Row {
public do() {
return 'blabla'+table.getName();
}
}
Направих го аз, като при добавяне на нов Row. Правя нещо от рода на
row.setTable(this);. Но не ми харесва нещо, а и като станат повече от 2 нивата трябва 2 референции да се предават и т.н .
Та ако някой е успял да ме разбере да предложе по изчистено решение :)Мерси предварително
Re: Design Issue
да и аз съм имал подобни проблеми, но не съм стигнал до кой знае какви проблясъци.
един вариант е метода "ду" да отиде в табле-то, но не е гот.
а тва за няколкото нива - примерно освен ред имаш и някъв клас за елемент - тогава е добре от елемента да имаш референс към реда и от реда към таблицата - като линеен списък.
един вариант е метода "ду" да отиде в табле-то, но не е гот.
а тва за няколкото нива - примерно освен ред имаш и някъв клас за елемент - тогава е добре от елемента да имаш референс към реда и от реда към таблицата - като линеен списък.
Re: Design Issue
Kakvo e tui 'do' v class Row (tuka mi namirisva na propuskane na agent class) i kakvi adjeba sa tezi 2-ri niva, etc.? Dai primer, kaji kakvo se opitvash da napravish, ta dala uspeem da pomognem.
btw, addRow e kofti, az bih predpochel metod add v Rows property-to na Table, koeto e ot tip RowCollection ili neshto takova...
btw, addRow e kofti, az bih predpochel metod add v Rows property-to na Table, koeto e ot tip RowCollection ili neshto takova...
Re: Design Issue
По скоро принципно питам от колкото конкретно, ама ето един пример.
Table генерира html таблица, като в do(); се "фореийчват" Rows, които пък от своя страна се състоят от Cells. Но примерно за някои от видовите Cell ни трябва името на формата, която пък я вземаме с table.getName();.
А addRow е по скоро някъв псевдокод.
Table генерира html таблица, като в do(); се "фореийчват" Rows, които пък от своя страна се състоят от Cells. Но примерно за някои от видовите Cell ни трябва името на формата, която пък я вземаме с table.getName();.
А addRow е по скоро някъв псевдокод.