Re[23]: Долгая компиляция на с++ - смерть для больших проект
От: B0FEE664  
Дата: 04.05.16 11:10
Оценка:
Здравствуйте, __kot2, Вы писали:

__>> "Сценарии покрыты на 100%"

__>>это примерно как заявить — код написан на 100% без ошибок. "ваши доказательства?"
__>ну кодом же вы как-то покрываете сценарии исполнения?

Бывает так, что в сложных, развитых проектах некоторые части кода не вызываются никогда за время эксплуатации (даже при массовом использовании).

__>>при чем тут вера, если это чисто математический факт: из теоремы райса вытекает, что не существует даже алгоритма, позволяющего проверить, покрывают ваши тесты 100% сценариев ошибок или нет, не говоря уже об автоматической генерации таких тестов.

__>вот есть Вася и Петя. и дали им задачу — написать автоисправление русского текста. задачи хитрая и четкого решения не имеющая.

__>Вася что-то написал, приносит код, мы открываем папочку с тестами и видим

__>чяща -> чаща
__>жыр -> жир
__>несделал -> не сделал

__>думаем, какой Вася молодец. вот мы сразу поняли, что кодом поддерживается, нам даже лезть в него не надо

Вася пробежал по таблице (базе) типичных ошибок и выдал исправление внесённое в вторую колонку таблицы для каждой их опечаток?

__>Петя отдает код и говорит "ну и задачку же вы мне подсунули". короче, говорит, я там что-то написал, я проверил у себя на компе там, я ему тест создал, просто опечаток понараскидал, он нашел 70%. улучшить можно, но пока не знаю как.

__>вы можете выбрать какой код развивать. и какой будете — Васин, который понятно что делает или Петин, который вообще непонятно что делает?
Действительно, у Васи всё понятно: опечатка — исправление. А у Пети не пойми что, какой-то нечёткий поиск, вероятности, проценты...

__>при этом, понимаете, Вася создал огромную ценность в виде минимальных некорректных примеров разных классов, а Петя просто проторчал в дебагере, выискивая какие-то опечатки, по всей видимости, еще и не все найденные. есть желание заниматься поиском его опечаток?


Ну, серьёзно: на практике есть классы задач, которые никак не покрываются тестами (классический пример — числа неограниченной длины) или же написание тестов превосходит по затратам написание кода на несколько порядков — это, как правило, задачи связанные с реальным миром: интерфейс, реалтайм системы, время, перегрузка входными данными от датчиков...
И каждый день — без права на ошибку...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.