극단적 인 프로그래밍 프로젝트에서 프로그래머는 대부분 페어 프로그래밍을합니다.
이 쌍들이 순환하기 때문에, 즉 다른 사람들과 프로그램을 쌍으로 묶고, 집단 소유권이 있다는 점에서 소스 코드가 자주 검토되고 업데이트됩니다.
그렇다면 코드 검토가 필요합니까? 내 말은, 프로그래밍을 중단하고 실제로 코드 검토를 수행합니다.
극단적 인 프로그래밍 프로젝트에서 프로그래머는 대부분 페어 프로그래밍을합니다.
이 쌍들이 순환하기 때문에, 즉 다른 사람들과 프로그램을 쌍으로 묶고, 집단 소유권이 있다는 점에서 소스 코드가 자주 검토되고 업데이트됩니다.
그렇다면 코드 검토가 필요합니까? 내 말은, 프로그래밍을 중단하고 실제로 코드 검토를 수행합니다.
답변:
Extreme Programming의 핵심 자원 중 하나는 Ward의 Wiki, 일명 Portland Pattern Repository (일명 C2.com)의 것 입니다. 여기에서 많은 사람들이 다양한 방법론을 해시하고 그들이 사용한대로 문서화했습니다.
이 위키에는 Ron Jeffries와 Kent Beck을 포함하여 많은 기여자가있는 Extreme Programming Code Reviews 페이지 가 있습니다.
이를 위해 그들은 말했다.
많은 대규모 전문가들은 코드 검토를 중요하게 생각합니다. 그것들은 표준 준수를 보장하기위한 것이며, 더욱 중요하게는 코드가 명확하고 효율적이며 작동하며 QWAN을 갖도록하기위한 것입니다. 또한 코드에 대한 지식을 다른 팀원들에게 전파하는 데 도움을주었습니다.
ExtremeProgramming을 사용하려면 두 명의 엔지니어가 협력하여 모든 개발을 수행해야합니다. 코드는 실제로 즉시 검토됩니다. 이를 통해 둘 이상의 사람이 항상 코드에 대해 친숙한 지식을 갖도록 할 수 있습니다.
ExtremeProgramming에는 모든 객체에 UnitTest가 있어야합니다. 이를 통해 개체가 작동하고 수정 된대로 계속 작동합니다.
일부 언어는 반영 적입니다. 이러한 언어에서 UnitTests는 중요한 표준 준수를 직접 확인할 수 있습니다. (예 : 객체는 # = 및 #hash를 구현하거나 둘 다 구현하지 않아야합니다.)
ExtremeProgramming은 CollectiveCodeOwnership을 실행하므로 많은 개발자가주의를 기울여야하는 객체를 찾아 볼 수 있습니다. 이것은 표준에 맞지 않는 코드를 생성하는 사람들에게 부담을주는 경향이 있습니다. 방문 개발자는 편차를 발견 할 때 코드를 준수하도록 권장 / 예방됩니다. 또한 코드에 대한 지식이 코드를 만든 초기 프로그래머 쌍을 넘어 전파됩니다.
따라서 ExtremeProgramming 프로젝트에는 명시적인 검토가 필요하지 않습니다. 방법론에서 삭제하십시오.
또한 다른 사람들과의 주제에 대해 더 많은 토론이 있습니다.
핵심은 테스트, 협업 소유권 및 페어 프로그래밍의 조합으로 코드 검토가 일반적으로 수행해야하는 목표를 해결한다는 것입니다.
이러한 작업은 Extreme Programming에서 페어 프로그래밍과 자동 테스트를 통해 지속적으로 수행되므로 명시적인 Fagan 검사 가 필요하지 않습니다.
관련 독서 :