Аксиома.
В любой программе есть ошибки.
Закон пропорциональности.
Чем нужнее программа, тем больше в ней ошибок.
Следствие.
Ошибок не содержит лишь совершенно ненужная программа.
Фундаментальный закон "Теории ошибок".
На ошибках учатся.
Следствие 1.
Программист, написавший программу, становится ученым.
Следствие 2.
Чем больше программист делает ошибок, тем быстрее он становится ученым.
Следствие 3.
Крупный ученый-программист никогда не пишет правильных программ.
Замечание.
На то он и ученый.
Советы начинающим программистам.
- Если вы с первого раза написали программу, в которой транслятор не обнаружил ни одной ошибки, сообщите об этом системному программисту. Он исправит ошибки в трансляторе.
- Никогда не исправляйте найденные ошибки, ибо это повлечет за собой появление неизвестного числа ненайденных. Лучше опишите их в сопроводительной документации в качестве особенностей программы.
Закон обнаружения ошибок.
Программист может найти ошибку только в чужой программе.
Следствие.
Ошибке не все равно, кто ее обнаружит.
Свойство четности ошибок.
Если написанная программа сработала правильно, то это значит, что во время ее работы выполнялось четное число ошибок или программист не понял задания.
Интерпретация свойств четности для политиков.
Ошибка, повторенная дважды перестает быть ошибкой.
Взаимодействие ошибок с базовой операционной системой.
- Во время исполнения ошибки имеют приоритет.
- Прервать исполнение ошибки может только другая, более активная ошибка.
- Запросы операционной системы к ошибкам могут игнорироваться последними.
- Запросы ошибок к операционной системе игнорироваться не могут.
- При работе с файлами ошибки могут пользоваться файловой системой базовой ОС и ее ошибками.
- На ЭВМ с параллельной архитектурой может выполняться несколько ошибок одновременно.
Заключение.
До начала работы над проектом следует тщательно продумать все необходимые ошибки и связи между ними. Это значительно упростит работу над ошибками в самом проекте.