Re[14]: Долгая компиляция на с++ - смерть для больших проект
От: landerhigh Пират  
Дата: 29.04.16 12:25
Оценка:
Здравствуйте, Stanislav V. Zudin, Вы писали:

L>>Если вы подозреваете, что в алгоритме есть баг, просто пишете тест, воспроизводящий условия, при котором, как вы подозреваете, алгоритм ломается. Это просто и быстро. Проверяете свои подозрения. В отладчике в общем случае это сделать уже невозможно.

SVZ>Дьявол кроется в деталях выделенном.
SVZ>Не всегда просто и нифига не быстро.

Если не просто и не быстро, то вы либо не понимаете свой собственный код, либо алгоритм, либо предметную область. Значит, нужно заполнять пробелы.

SVZ>В моей практике это сложно и геморройно. И еще объемно.


Хороший индиактор того, что тестируемый код пора дробить на части.

SVZ>Как правило это добрая сотня строк, чтобы сварганить минимально-необходимый набор данных. И еще сотня — чтобы проверить результат. Написание одного теста занимало по полдня без перекуров. Работа алгоритма же не сводится к булевскому значению.


И это тоже индикатор

SVZ>Из полученных данных еще надо выудить нечто, что можно проверить. И в каждом тесте это "нечто" будет разным.


Это как раз не проблема

SVZ>Из-за этого у нас прижились рантайм проверки (ассерты) всего и вся и отладчик.


У меня крайне негативное отношение к ассертам, когда речь идет о плюсах.
Безотносительно этого, их применимость крайне ограничена, а для симуляции разных условий они вообще бесполезны.

Тестами можно сделать все, что можно сделать отладчиком. Только намного быстрее и автоматизировано.
И еще много чего такого, что отладчиком сделать вообще никак нельзя.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.