А как быть в той ситуации, когда по мере кодирования необходимо вносить изменения во многих местах программы? Например, когда программа должна работать с файлом, но сначала, для отладки, используется команда печати на экран printf(), а потом некоторые из них изменяются на печать в файл fprintf(). При этом если перепутаешь printf и fprintf, то ошибка не сразу бросается в глаза.
Я лично никогда так не делаю, с начало одно а потом что-то изменяется... Это как раз пример где вероятность возникновения ошибок велика. Что мешает сразу писать в файл, а потом проверить его правильность? Я делаю всегда так как должно быть в итоге, обычно поэтапно, но шаги не заменяются кардинально другими! Имхо вы тем самым себе создаете головную боль и дополнительную работу, потому что выгоды от такой "дебажной" замены нет никакой. Проанализируем этот кусок программы:
Допустим я предусмотрел в программе блок кода заменяющий на вывод на экран! Далее проверил результаты, все хорошо, работает. Отлично делаем программу дальше, и тут допустим мне снова надо посмотреть промежуточный результат, я переключаю на вывод на экран и программа не может дальше работать! Потому что последние апгрейды используют файл, а мы смотрим на экране, и из-за этого возникает крах программы. Тут мы понимаем что эта "дебажная" вставка ни к селу ни к городу и избавляемся от нее раз и навсегда!
Вывод: Алгоритм программы должен быть такой как мы хотим его видеть в итоговом результате! А все дебажные вставки должны быть отдельно! В примитивном случае это массаги, в более сложном виде это класс ведения лога или другие специально сделанные для этого классы.
Основной акцент в своем предыдущем посте я делал на слова "продуманность архитектуры программы", "каркас программы", "модуль программы", я еще раз говорю нужно больше продумывать это а не лепить все в один флакон!
-- Пн авг 02, 2010 15:03:22 --Цитата:
по мере кодирования необходимо вносить изменения во многих местах программы
Данная цитата указывает на полное отсутствие понимания задачи в целом!
Поэтому и возникает необходимость вносить изменения "по мере кодирования".