Утверждения не только подтверждают код, но и служат формой документации, которая информирует читателей о свойствах различных структур, которые, как они могут быть уверены, будут удовлетворены в этот момент выполнения (например, node->next != NULL
). Это помогает создать мысленную модель кода, когда вы читаете его.
Утверждения также служат для предотвращения аварийных сценариев во время выполнения. например,
assert(fuel);
launch_rocket();
Попытка запуска без топлива может привести к катастрофическим последствиям. Ваши юнит-тесты, возможно, поймали этот сценарий, но всегда возможно, что вы пропустили его, и отмена, потому что условие не выполнено, на Путь лучше, чем сбой и сгорание во время выполнения.
Итак, короче, я бы оставил их там. Это хорошая привычка добавлять их, и нет смысла отучаться от них.