나쁜 디자인의 다양한 징후와 증상
이름 | 증상 |
---|---|
경직성 (Rigidity) | 시스템이 변경하기 어렵다. 한 가지를 변경할 때마다 끝없는 연속적인 변경이 필요하다. |
취약성 (Fragility) | 시스템의 한 부분을 변경하면 다른 여러 관련 없는 부분이 깨진다. |
부동성 (Immobility) | 다른 시스템에서 재사용할 수 있도록 시스템을 구성 요소로 분리하기 어렵다. |
점착성 (Viscosity) | 설계에 맞는 코드를 추가하는 것보다 임시방편으로 코드를 추가하는 것이 더 쉬운 경우 점착성이 높다 |
불필요한 복잡성 (Needless Complexity) | 현재는 필요하지 않지만 언젠가는 유용할 수 있는 복잡한 코드 구조가 많다. |
불필요한 반복 (Needless Repetition) | 코드를 마치 '복사 및 붙여넣기'를 사용하여 두 명의 프로그래머가 작성한 것처럼 보인다. |
불투명성 (Opacity) | 원 작성자의 의도를 이해하는 것이 표현의 복잡성과 관련된 특정 어려움을 수반한다. |