18 lines
2.2 KiB
Markdown
18 lines
2.2 KiB
Markdown
# [[Strangler Fig Pattern]]
|
|
|
|
## 📌 Brief Summary
|
|
Strangler Fig Pattern(교살자 패턴)은 얽혀있는 거대한 레거시 코드 시스템을 한 번에 모두 재작성(Rewrite)하거나 해결하려 하는 대신, 아주 작은 부분부터 점진적으로 대체해 나가는 코드 개선 및 리팩토링 접근법입니다 [1]. 기존 코드를 서서히 점령해 나가며 테스트 가능한 영역으로 끌어들이는 방식으로, 안전하게 시스템을 현대화하는 데 사용됩니다 [1]. 주어진 소스 데이터에는 이 패턴에 대한 개략적인 개념만 언급되어 있으며, 전반적으로 소스에 관련 정보가 부족합니다.
|
|
|
|
## 📖 Core 점진적 레거시 개선 접근
|
|
* **점진적 접근 및 안전한 영역 확장**: 교살자 패턴은 레거시 코드라는 거대한 타래를 한꺼번에 풀려고 시도하는 것을 지양합니다 [1]. 대신 스프라우트 메서드(Sprout Method)와 같이 새로운 로직을 별도로 분리된 검증된 함수로 작성하여 기존 코드에서 호출하게 하는 전략 등과 궤를 같이합니다 [1]. 아주 작은 부분부터 테스트의 영역 안으로 끌어들여 기존 시스템을 서서히 점령해 나가는 방식을 취합니다 [1].
|
|
* **재작성(Rewrite)과의 대안적 평가**: 유지보수나 변경이 어려운 코드를 만났을 때, 완전히 재작성하는 것이 나을지 파악하기 위한 타임박싱(Timeboxing) 전략의 일환으로 사용될 수 있습니다 [2]. 예를 들어, 1시간은 일반적인 리팩토링에 투자하고, 또 다른 1시간은 교살자 패턴 접근법(Strangler Fig approach)을 시도해 본 뒤, 두 방식 중 더 효과적으로 진척된 방법을 선택하는 식으로 활용할 수 있습니다 [2].
|
|
|
|
*(※ 그 외 교살자 패턴의 구체적인 구현 메커니즘이나 상세 절차에 대해서는 소스에 관련 정보가 부족합니다.)*
|
|
|
|
## ⚖️ Trade-offs & Caveats
|
|
소스에 관련 정보가 부족합니다.
|
|
|
|
(제공된 소스 데이터에는 Strangler Fig Pattern을 적용할 때 발생할 수 있는 구체적인 부작용, 제약 사항, 혹은 반대 급부(Trade-off)에 대한 설명이 포함되어 있지 않습니다.)
|
|
|
|
---
|
|
*Last updated: 2026-05-03* |