Поток лавы (программирование)
На программирования жаргоне компьютерного поток лавы — это антишаблон, который возникает, когда исходный код компьютера , написанный в неоптимальных условиях, развертывается в производственной среде и впоследствии расширяется, пока еще находится в стадии разработки. Этот термин происходит от естественного образования лавы, которая после охлаждения затвердевает в породу, которую трудно удалить. Аналогичным образом, такой код становится трудно поддаваться рефакторингу или замене из-за зависимостей, которые возникают с течением времени, что требует поддержания обратной совместимости с исходным, незавершенным проектом. [1]
Причины
[ редактировать ]Поток лавы может возникнуть по разным причинам в процессе разработки программного обеспечения:
- Необходимость соблюдать сроки приводит к тому, что временные решения становятся постоянными
- Недостаточная документация, которая мешает пониманию цели кода.
- Отсутствие автоматизированных тестов, что делает рефакторинг рискованным.
- Частые изменения в команде разработчиков, приводящие к потере знаний
Последствия
[ редактировать ]Недоработанный код, который становится частью инфраструктуры программного обеспечения, увеличивает сложность системы, а кодовую базу становится все труднее понимать и поддерживать. Это приводит к:
- Необходимость обратной совместимости , которая может задушить инновации и помешать внедрению новых, более эффективных решений.
- Увеличение технического долга , который накапливается с течением времени, что приводит к увеличению затрат на изменения и обслуживание.
- Препятствия для рефакторинга или улучшения системы из-за страха сломать зависимые компоненты.
Влияние на команды
[ редактировать ]Команды разработчиков часто испытывают воздействие потока лавы , когда члены команды приходят и уходят:
- Потеря знаний об аспектах кода системы после ухода первоначальных разработчиков.
- Нежелание новых разработчиков рефакторить незнакомый код, что приводит к еще большей сложности, поскольку они добавляют, а не очищают [2]
Стратегии смягчения последствий
[ редактировать ]Несколько практик могут смягчить последствия анти-паттерна потока лавы :
- Продвижение передовых методов документирования для четкого понимания кода.
- Поощрение регулярных проверок кода для раннего обнаружения неоптимальных практик.
- Приоритизация рефакторинга как неотъемлемой части жизненного цикла разработки.
- Поддержание комплексного набора автоматизированных тестов для снижения риска изменений.
Ссылки
[ редактировать ]- ^ «Поток лавы» . Вики по шаблонам проектирования Perl . Архивировано из оригинала 31 марта 2016 года . Проверено 4 февраля 2018 г.
- ^ Майк Хэдлоу (15 декабря 2014 г.). «Анти-паттерн слоя лавы» . Кодовая тирада . Проверено 7 января 2016 г.