1. DRY(Don't Repeat Yourself)
DRY 원칙은 코드에서 중복을 피하도록 권장합니다. 효율적인 재사용을 위해 반복되는 코드를 하나의 구성 요소로 통합하는 것을 지지합니다. 이 원칙은 복잡성을 줄이고 유지 관리성을 높이는 것을 목표로 합니다.
시스템이 커짐에 따라 개념의 수와 상호 연결로 인해 복잡성이 기하급수적으로 증가할 수 있습니다. 각 개념과 기능이 한 곳에만 존재하도록 하여 이를 관리하는 것이 중요합니다. 이는 개별 코드 블록에서 팀 전체 기능 및 여러 팀 간의 공유 구성 요소에 이르기까지 프로젝트의 다양한 규모에 적용할 수 있습니다.
DRY 원칙을 위반하는 것을 종종 WET라고 하는데, 이는 'We Enjoy Typing' 또는 'Write Everything Twice'를 의미합니다. WET 관행을 피하면 보다 효율적이고 버그에 강한 시스템이 보장됩니다.
2. KISS (Keep It Simple, Stupid)
KISS는 디자인과 코드의 단순성을 옹호합니다. 이 약어의 변형에는 "Keep it small and simple" 및 "Keep it short and simple"이 포함됩니다. 알버트 아인슈타인은 "할머니에게 설명할 수 없다면 이해하지 못하는 것이다"라고 말했습니다. 단순함은 프로젝트에 대한 더 깊은 이해를 나타냅니다.
단순성을 추구하는 것은 코드 한 줄을 쓰기도 전에 시작됩니다. 구현을 단순화하는 전략과 함께 프로젝트의 목적과 목표에 대한 포괄적인 이해는 성공적인 프로젝트 완료를 위한 토대를 마련합니다.
3. YAGNI(You Ain't Gonna Need It)
YAGNI는 미래의 요구 사항을 예상하여 불필요한 기능이나 코드를 추가하여 과도한 엔지니어링에 대해 조언합니다. 나중에 필요한 것이 아니라 지금 필요한 것을 구현하는 데 집중하십시오.
선제적으로 기능을 추가하면 코드가 불필요하게 길어져 분석하기가 더 어려워지고 버그를 포함할 가능성이 높아집니다. 특정 데이터베이스를 사용하여 데이터를 가져오는 프로그램을 설계한다고 가정해 보겠습니다. 처음부터 다른 잠재적인 데이터베이스와의 호환성을 구축하고 싶은 유혹이 있지만 프로젝트 일정이 길어지고 비용이 증가할 수 있습니다. 현재 요구 사항을 고수하고 필요한 경우 확장하십시오.
DRY, YAGNI, KISS: 단순함의 3요소
DRY, YAGNI 및 KISS 간의 시너지 효과는 우리를 단순성과 효율성으로 안내합니다. DRY는 시스템을 모듈화하여 복잡성을 관리하는 데 도움이 됩니다. YAGNI는 구성 요소 수를 줄이는 데 도움이 되며 KISS는 솔루션의 단순성을 추구합니다.
언급할 가치가 있는 추가 원칙 중 하나는 함수나 클래스가 다른 프로그래머가 예상할 수 있는 동작과 기능을 제공해야 한다는 POLA(Principle of Least Surprise)입니다.
'Unity > Design Pattern' 카테고리의 다른 글
Unity로 이해하는 빌더 패턴 (0) | 2023.09.27 |
---|---|
Unity로 이해하는 상태 패턴 (State Pattern) (0) | 2023.08.09 |
Unity로 이해하는 옵저버 패턴 (Observer Pattern) (0) | 2023.08.08 |
Unity로 이해하는 팩토리 패턴 (Factory Pattern) (0) | 2023.08.07 |
Unity로 이해하는 어댑터 패턴 (Adapter Pattern) (0) | 2023.08.06 |