Page 70 - 4787
P. 70

8 КРУПНІ РЕФАКТОРИНГИ ПРИ РОЗРОБЦІ ПРГРАМНОГО
                                                    ЗАБЕЗПЕЧЕННЯ

                        На що необхідно звернути увагу в даній лекції, так це на далеко не такий

               ретельний опис кроків, як у попередніх рефакторингах. Це пов'язано з тим, що


               при  проведенні  великих  рефакторингов  ситуація  істотно  змінюється.  Коли


               вводиться    в  метод  новий  параметр,  то  механізм  зрозумілий,  тому  що  видно

               область дії. Коли ж  розбираються із заплутаним спадкуванням, то в кожному


               випадку є суттєва невизначеність (безлад).


                       Крім того, треба уявляти собі, що описувані тут рефакторинги забирають

               багато часу. Будь-якмй рефакторинг раніше можна виконати за кілька хвилин, у


               крайньому  випадку,  за  годину.  Над  деякими  ж  великими  рефакторингом

               працюють  протягом  місяців  або  років,  причому  в  діючих  системах.  Коли  є


               функціонуюча  система  і  треба  розширити  її  функціональність,  переконати


               керівництво,  що  треба  зупинитися  на  пару  місяців,  поки    буде  приводити  в


               порядок  код,  досить  важко.  Замість  цього    повинні  чинити,  як  Ганзель  і

               Гретель,  відкушуючи  по  краях  ледь-ледь  сьогодні,  ще  чуть-чуть  завтра.  При


               цьому    повинні  керуватися  потребою  в    тільки  додаткових  діях.  Виконувати

               рефакторинг  потрібно  тоді,  коли  виникає  необхідність  додати  функцію  і


               виправити помилки. Почавши рефакторинг,  не обов’язково ретельно доводити


               його  до  кінця.  Доцільно  робити  стільки,  скільки  необхідно,  щоб  виконати

               реально поставлене завдання. Завжди можна продовжити на наступний день.


                       Через  те  що  вони  відбирають  так  багато  часу,  великі  рефакторинги  не


               приносять миттєвої винагороди, як звичайний рефакторинг.  Доведеться лише

               задовольнятися вірою, що з кожним днем життя удосконаленої програми трохи


               безпечніше.





                                                                                                             69
   65   66   67   68   69   70   71   72   73   74   75