Page 67 - 4787
P. 67
Розглянемо простий виадок для знаходження простої змінної, для якої
привласнення виконується один раз.
Якщо установка тимчасової змінної проводиться кілька разів , спробуйте
скористатися «Розщеплення тимчасової змінної» (Split Temporary Variable).
Оголосіть тимчасову змінну з ключовим словом final. Скомпілюйте код.
Це гарантує, що присвоювання тимчасової змінної виконується тільки один раз.
Виділіть праву частину присвоювання в метод. Спочатку позначте метод
як закритий (private). Пізніше для нього може бути знайдено додаткове
застосування, і тоді захист буде легко послабити.
Тимчасові змінні часто використовують для підсумовування даних у
циклах. Цикл може бути повністю виділений в метод, що дозволить позбутися
кількох рядків відволікаючого увагу коду.
Іноді в циклі складаються декілька величин . У такому випадку повторіть
цикл окремо для кожної тимчасової змінної, щоб мати можливість замінити її
викликом методу. Цикл повинен бути дуже простим, тому дублювання коду чи
не небезпечно. У даному випадку можуть виникнути побоювання з приводу
зниження продуктивності. Залишимо їх поки що в стороні, як і інші пов'язані з
нею проблеми. У дев'яти випадках з десяти вони не істотні. Якщо
продуктивність важлива, то вона може бути поліпшена на етапі оптимізації.
Коли код має чітку структуру, часто знаходяться більш потужні оптимізувальні
рішення, які без рефакторинга залишилися б непоміченими. Якщо справи
підуть зовсім погано, можна легко повернутися до тимчасових змінних .
Приклад 3. Видалення присвоювань параметрам
Код виконує присвоювання параметрам. Скористайтеся замість цього
введення тимчасових змінних.
66