규칙 3(컴퓨터 프로그래밍)
Rule of three (computer programming)규칙 3(Three strikes and you refactor)은 중복을 피하기 위해 유사한 코드 조각을 언제 리팩터링해야 하는지를 결정하는 코드 리팩터링 경험 규칙입니다.유사한 코드의 두 인스턴스는 리팩터링이 필요하지 않지만 유사한 코드를 세 번 사용할 경우 새로운 절차로 추출해야 한다고 명시되어 있습니다.그 규칙은 리팩터링의[1] 마틴 파울러에 의해 대중화되었고 돈 로버츠에 기인했다.
복제는 코드를 유지하기가 더 어려워지기 때문에 프로그래밍에서 잘못된 관행으로 간주됩니다.복제된 코드 조각으로 인코딩된 규칙이 변경되면 코드를 유지하는 사용자는 모든 위치에서 규칙을 올바르게 변경해야 합니다.
그러나 중복을 피하기 위해 적절한 설계를 선택하면 패턴을 볼 수 있는 더 많은 예제가 도움이 될 수 있습니다.조기 리팩터링을 시도하면 잘못된 추상화를 선택할 위험이 있습니다.이 경우 새로운 요건이[2] 출현함에 따라 코드가 악화될 수 있으며 결국 리팩터링을 다시 수행해야 합니다.
이 규칙에 따르면 복사본이 3개일 경우 유지 보수 비용이 리팩터링 비용과 잠재적 설계 불량 비용보다 확실히 더 크며 복사본이 2개일 경우 유지 보수 비용이 더 클 수 있습니다.
「 」를 참조해 주세요.
- 복사 및 붙여넣기 프로그래밍
- 반복하지 마세요(DRY)
레퍼런스
- ^ Martin Fowler; Kent Beck; John Brant; William Opdyke; Don Roberts (1999). Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional. ISBN 978-0201485677.
- ^ Sandi Metz, "The Wrong Abstraction" (2016년)