У меня всегда есть проблема с разработкой класса, в котором правильный вызов метода будет понятен программисту, и не будет опасности выполнения какого-либо метода до того, как данные, переменные будут установлены другим методом. Поэтому я обычно использую флаги и операторы If, чтобы быть в безопасности:
class foo {
boolean isInitialised = FALSE;
boolean isSthDone = FALSE;
float importantData;
public void initialise {
...
isInitialised = TRUE;
}
public void doSth1 {
if (isInitialised) {
importantData = 2134234;
} ...
isSthDone = TRUE;
}
public void doSth2 {
if (isInitialised && isSthDone1) {
...
}
}
}
Такой дизайн не дает никакой подсказки, как следует использовать алгоритм - какой метод должен выполняться первым, существует ли какой-либо шаблон проектирования для этой проблемы?
then
? (Проверьте историю изменений...) - person ChaosPandion   schedule 10.03.2011