Основное защитное программирование

Возможный дубликат:
Любимые (Умные) Лучшие Практики Защитного Программирования

Некоторые программисты всегда советуют мне сосредоточиться на легкой отладке. Что такое защитное программирование и в какой степени его следует учитывать во время практики?

И еще один важный вопрос: есть ли ключевые моменты, которые следует учитывать при кодировании, и каковы они?

4 ответа

Решение

Посмотри на

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

Как правило, если вы ловите себя на мысли, что "это всегда будет правдой", напишите ASSERT( condition) в этом месте. Наверное, в этом и заключается суть защитного программирования;).

Если защитное программирование подразумевает только одну вещь, это следует широко использовать.

Вот хорошая статья о том, когда и где использовать assert,

Есть много ситуаций, когда полезно использовать утверждения. Этот раздел охватывает некоторые из них:

* Internal Invariants
* Control-Flow Invariants
* Preconditions, Postconditions, and Class Invariants

http://en.wikipedia.org/wiki/Defensive_programming

Защитное программирование означает, что вы проверяете, существует ли файл и есть ли у вас права на его открытие, а не просто пытаетесь открыть его и перехватывать любые возможные исключения. (Просто пример)

Другие вопросы по тегам