Законы Мерфи


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


•  От перестановки двух эквивалентных ошибок результат не меняется (коммутативность эквивалентных ошибок).


•  Две последовательные ошибки можно объединить в одну, более сильную.


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


•  Ошибки могут образовывать циклы. Наиболее устойчивый из них - бесконечный.


•  Ошибки могут вызывать друг друга и сами себя (рекурсивность ошибок).


•  Ошибки допускают многократное вложение друг в друга. Две одинаковые вложенные ошибки называются четной ошибкой и ошибкой не являются.


•  Свойство четности ошибок. Если написанная программа сработала правильно, то это значит, что во время ее работы выполнилось четное число ошибок или программист не понял задание.


•  Ошибка, повторенная дважды, перестает быть ошибкой.


•  Во время исполнения ошибки имеют наивысший приоритет. Прервать исполнение ошибки может только другая, более активная ошибка.


•  Запросы операционной системы к ошибкам ошибками могут игнорироваться.


•  Запросы ошибок к операционной системе игнорироваться не могут.


•  При работе с файлами ошибки могут пользоваться файловой системой базовой ОС и ее ошибками.


•  На ЭВМ с параллельной архитектурой может выполняться несколько ошибок одновременно.


•  Системные программы облегчают процесс написания прикладных программ и их ошибок.