09 октября 1998


╔═══════════════════════════════════════╗ 
║                !!?ЮМОР?!!             ║ 
╚═══════════════════════════════════════╝ 
                                          
               В. ТИХОНОВ                 
                                          
                                          
              ТЕОРИЯ ОШИБОК               
        Ошибки так же неисчерпаемы,       
                как и атом.               
                                          
                 АКСИОМА                  
     В любой программе есть ошибки.       
                                          
                                          
                                          
                                          
        ЗАКОН ПРОПОРЦИОНАЛЬНОСТИ          
           Чем  более программа необходи- 
ма,тем больше в ней ошибок.               
                                          
                СЛЕДСТВИЕ                 
            Ошибок  не  содержит лишь со- 
вершенно ненужная программа.              
                                          
                                          
                                          
   ФУНДАМЕНТАЛЬНЫЙ ЗАКОН ТЕОРИИ ОШИБОК    
           На  ошибках учатся.            
                                          
               СЛЕДСТВИЕ 1                
            Программист, написавший прог- 
рамму, становится ученым.                 
                                          
               СЛЕДСТВИЕ 2                
   Чем  больше программист делает ошибок, 
тем быстрее он становится ученым.         
                                          
               СЛЕДСТВИЕ 3                
      Крупный  ученый-программист никогда 
не пишет правильные программы.            
                                          
                ЗАМЕЧАНИЕ                 
           На то он и ученый.             
                                          
                                          
                                          
    УКАЗАНИЕ НАЧИНАЮЩЕМУ ПРОГРАММИСТУ     
Если  вы  с  первого раза сумели написать 
программу,  в которой транслятор не обна- 
ружил  ни  одной ошибки, сообщите об этом 
системному программисту. Он исправит      
                            ошибки      в 
трансляторе.                              
                                          
                                          
        ЗАКОН НАХОДИМОСТИ ОШИБОК          
           Программист может найти ошибку 
только в чужой программе.                 
                                          
                СЛЕДСТВИЕ                 
 Ошибке не все равно, кто ее обнаружит.   
                                          
                                          
                                          
     СОВЕТ НАЧИНАЮЩЕМУ ПРОГРАММИСТУ       
Никогда  не исправляйте найденные ошибки, 
ибо это повлечет за собой появление неиз- 
вестного числа ненайденных. Лучше опишите 
их в сопроводительной документа-          
                        ции  как  особен- 
ность программы.                          
                                          
                                          
                                          
               ОПРЕДЕЛЕНИЕ                
   Будем  называть языком ошибок правила, 
в обход которых пишутся программы.        
                                          
               ЯЗЫК ОШИБОК                
                                          
1. Ошибки могут следовать друг за другом. 
                                          
2.  От  перестановки  двух  эквивалентных 
ошибок результат не меняется (коммутатив- 
ность эквивалентных ошибок).              
                                          
3.  Две последовательные ошибки можно об- 
ъединить в одну, более сильную.           
                                          
4. Одинаковые ошибки необязательно делать 
каждый  раз,  достаточно  сделать одну, а 
затем  обращаться к ней по мере необходи- 
мости из любого места программы.          
                                          
5.  Ошибки могут образовывать циклы. Наи- 
более устойчивый из них - бесконечный.    
                                          
6. Ошибки могут вызывать друг друга и са- 
ми себя (рекурсивность ошибок).           
                                          
7. Ошибки допускают многократное вложение 
друг в друга.                             
                                          
8.  Две одинаковые вложенные ошибки назы- 
ваются  четной ошибкой и ошибкой не явля- 
ются.                                     
                                          
                                          
        СВОЙСТВО ЧЕТНОСТИ ОШИБОК          
Если  написанная программа сработала пра- 
вильно, то это значит, что во время ее    
   работы выполнялось четное число ошибок 
или программист не понял задание.         
                                          
 ФОРМУЛИРОВКА ВЫШЕПРИВЕДЕННОГО СВОЙСТВА,  
      ПРЕДНАЗНАЧЕННАЯ ДЛЯ ПОЛИТИКОВ       
             Ошибка,  повторенная дважды, 
перестает быть ошибкой.                   
                                          
      ВЗАИМОДЕЙСТВИЕ ОШИБОК С БАЗО-       
        ВОЙ ОПЕРАЦИОННОЙ СИСТЕМОЙ         
            Во  время  исполнения  ошибки 
имеют наивысший приоритет.                
    Прервать   исполнение   ошибки  может 
только другая, более активная ошибка.     
    Запросы  операционной системы к ошиб- 
кам ошибками могут игнорироваться.        
        Запросы   ошибок  к  операционной 
системе  игнорироваться не могут. При ра- 
боте  с файлами ошибки могут пользоваться 
файловой системой базовой ОС и            
                                 ее ошиб- 
ками.                                     
    На  ЭВМ  с  параллельной архитектурой 
может выполняться несколько ошибок        
                                одновре-  
менно.                                    
                                          
                                          
                                          
           СИСТЕМНЫЕ ПРОГРАММЫ            
   Системные  программы облегчают процесс 
написания прикладных программ и их        
                                   оши-   
бок.                                      
      Определение.   Тестирование  -  это 
процесс  нахождения ошибок в тесте. Хоро- 
ший тест должен содержать ошибки, компен- 
сирующие их нехватку в тестируемой        
                                  прог-   
рамме. Языковой редактор, призванный убе- 
речь  программиста от синтаксических оши- 
бок, позволяет вносить в программу весьма 
хитроумные ошибки, которые не удается об- 
наружить  ни транслятором, ни отладчиком. 
Обычный текстовый редактор таких воз-     
                         можностей     не 
предоставляет.      Программа-транслятор, 
предназначенная  для  перевода программ с 
языка  высокого  уровня на машинный язык, 
при  переводе  порождает  ошибки. Ошибки, 
которые содер-                            
             жались  в исходном описании, 
переводятся  безошибочно.  Заключительный 
совет тем, кто до него добрался. До нача- 
ла  работы над проектом следует тщательно 
продумать  все необходимые ошибки и связи 
между ними. Это                           
          значительно упростит работу над 
ошибками в самом проекте.                 
                                          
                            На этом все!! 
═════════════════════════════════════════ 
   ###    #  ###     ##   ##              
  #   #   # #   #   #  # #  #             
   ####   # #   #    ###  ##              
      #   # #   #      # #  #             
   ###  # #  ###  # ###   ##              
═════════════════════════════════════════ 
                                          



Other articles:


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
Internet - "can be divided into two halves spektrumistov - those associated with the networks and those that these networks had never seen."
Likbez - a full disassembler ROM (part 26).
Kempston Mouse-2 - Determine whether the mouse. Handling buttons and coordinates.
Iron - Yugoslavia - landfill?

В этот день...   21 November