새로운 질서 위키

보이스카우트 규칙

보이스카우트 규칙(Boy Scout Rule)은 손댄 코드를 발견했을 때보다 조금 나은 상태로 남기자는 작업 원칙이다. 로버트 C. 마틴(Robert C. Martin)은 『클린 코드』에서 캠프장을 더 깨끗하게 남기는 비유를 소프트웨어 유지에 적용했다. 변수 이름을 분명하게 바꾸거나 중복을 줄이는 작은 수정도 여기에 포함된다. (클린 코드, 보이스카우트 규칙)

지나간 자리에 남길 것

  • 위키를 읽다가 모호한 문장 하나를 고치거나 끊어진 출처를 확인하는 일에도 적용해볼 수 있다. DRY를 참고해 같은 설명이 중복된 곳을 찾는 방법도 있다.
  • 리팩토링은 기존 동작을 유지하며 내부 구조를 개선하는 작업이다. 작은 정리를 이유로 원래 의도나 다른 사람의 작업까지 마음대로 바꾸지 않도록 수정 범위를 정하자. (마틴 파울러, 리팩토링)
  • 손볼 곳을 계속 발견하더라도 오늘의 작업을 끝낼 기준은 필요하다. 고치다가 멈출 기준을 적어두고 큰 문제는 별도 작업으로 남겨보자. 파울러도 연쇄적인 정리가 끝없이 이어질 위험을 지적한다. (기회가 생길 때 하는 리팩토링)

기타 등등

  • 『클린 코드』의 각주는 캠프장 문장이 스카우트 창시자의 작별 메시지를 바탕으로 바뀐 표현임을 밝힌다. 본래 메시지는 캠프장이 아니라 세상을 더 나은 곳으로 남기는 일을 말한다. 출처
  • 파울러는 관련 실천을 ‘캠프장 규칙(camp site rule)’이라고도 부른다. 이름은 달라도 다음 작업자가 만날 상태를 개선한다는 방향을 공유한다. 출처

#원칙 #프로그래밍 #유지보수

검색