корреляцию)
в своих изменениях
и не всегда заметных
связях.
Поэтому, думая сразу о нескольких вещах,
вы не сможете понять, какие именно изменения привели к каким
результатам.
Помните, что вы не сможете добиться успешной оптимизации,
работая одновременно с несколькими переменными. Выберите самую
важную и сконцентрируйте на ней свои усилия.
Рефакторинг
Элегантность неестественна, и достичь ее
можно только ценой больших усилий. Изначально
результат не будет элегантным, но если, создав
продукт, вы поймете, как можно его улучшить, а
затем переделаете его, то после некоторого
неизвестного количества итераций сможете
получить нечто по-настоящему элегантное.
Эрик Наггум, программист
Не все изменения
системы
или мероприятия по ее
совершенствованию обязательно повлияют на результат ее работы.
Рефакторинг
представляет собой процесс изменения системы,
направленный на повышение ее эффективности без изменения
результата ее работы. Изначально этот термин появился в области
программирования. Программисты проводят многие часы за
переписыванием кода, который даже при самом благоприятном исходе
будет делать
то же самое,
что и прежде.
Основное преимущество рефакторинга не связано с улучшением
результата работы системы: скорее, речь идет о превращении системы в
более быструю или эффективную, то есть у вас появляется возможность
либо ускорить работу, либо задействовать для достижения результата
меньше ресурсов.
Рефакторинг начинается с
деконструкции
процесса или системы,
после которой осуществляется поиск
шаблонов.
В чем состоят
критически важные процессы, без точного соблюдения которых вы не
сможете достичь желаемой цели? Должны ли эти процессы следовать в
определенном порядке? В чем состоят нынешние
ограничения?
Что
кажется самым важным? Соберите максимум информации о том, как
работает система, а затем хорошенько ее проанализируйте.
Скорее всего, вы заметите, что в системе есть элементы, не
имеющие определенного смысла, — например, некий метод работы,
поначалу казавшийся оптимальным, но со временем переставший
таковым быть.
Научившись замечать шаблоны, вы сможете изменить состав
системы, например, с помощью объединения сходных процессов или
входных параметров. Представьте себе сборочный конвейер. Если вам
необходимо постоянно останавливать работу, чтобы сходить за
нужными деталями в другой конец цеха, следует изменить этот порядок
и сделать так, чтобы нужные компоненты всегда были под рукой.
Система будет производить все то же самое, с одной лишь разницей: вы
исключили из нее небольшой неэффективный элемент, влиявший на
вашу производительность не в лучшую сторону. Если ваша цель состоит
в том, чтобы ускорить работу системы или повысить ее эффективность,
то
рефакторинг
приобретает для вас ключевое значение.
Do'stlaringiz bilan baham: |