DRY
코드를 복사해 붙여넣을 때는 언제나 자신에게 물어야 한다. 왜 이걸 함수로 만들지 않는 거지?
Don’t Repeat Yourself. ‘반복하지 마라’는 뜻. 앤디 헌트와 데이브 토머스가 실용주의 프로그래머에서 제안한 소프트웨어 개발 원칙 가운데 하나. 같은 지식, 같은 의도, 같은 로직이 여러 곳에 중복되지 않도록 하는 것이 핵심이다.
중복된 코드는 유지보수를 어렵게 만든다. 한 곳을 고치면 다른 모든 곳도 함께 고쳐야 하기 때문이다. 반대로 DRY 원칙을 따르면 각 지식 조각이 시스템 내에서 단 하나의 명확하고 권위 있는 표현을 갖게 된다.