다른 답변에는 이미 매우 좋은 정보가 포함되어 있습니다. gbjbaanb가 암시 한 몇 가지 측면에 대해 조금 확장하고 싶습니다 (그의 답변에 대한 내 의견 참조).
내 경험상 코드 검토 중에 다른 종류의 피드백을 관찰했습니다.
- "솔직히 말해서 이것이 잘못되었거나 차선책이라고 생각합니다. 이런 식으로 바꾸어야합니다." 나는 보통 이런 종류의 피드백을 진지하게 받아들이고, 그것에 대해 강한 지적이 있다고 생각되는 경우에만 제안 된 변경에 반대 할 것입니다.
- "나는 당신의 해결책을 찾았습니다.이 대안을 고려하십시오. 그러나 당신이 변화를 받아 들일 것인지 아닌지는 당신에게 달려 있습니다." 나는 이런 종류의 피드백을 진지하게 받아들입니다. 검토자는 해결책이 더 낫다는 강한 의견이 없지만 대안을 제안하고 있습니다. 나는 무언가를 배울 기회가 있으며, 더 좋아지면 변화를 받아들입니다. 그렇지 않으면 리뷰어가 내 취향에 따라 코드를 유지하면 괜찮습니다.
- "나는 그것을 다르게했을 것이다. 그래서 당신은 그것을 바꾸어야한다." 다음 작업으로 넘어 가야하므로 세부 사항을 논의 할 시간이 많지 않다는 힌트와 함께 변경에 대한 간단한 설명이 제공됩니다.
- 검토자는 코드를 개선하지 않고 단지 다르게 만드는 사소한 자연의 작은 변화를 제안합니다. 제안 된 변경 사항에 대해 논의하라는 요청을 받으면 검토자는 소진을 포기할 때까지 사소한 세부 사항에 대해 긴 토론을합니다.
옵션 3, 4는 1과 2로 위장 할 수 있습니다. "내가 제안한대로하는 것이 정말 중요했습니다." 또는 "실제로 원하면 변경을 거부 할 수 있습니다."라고 말하면서 실제로 말하는 것과 반대의 의미로 사용됩니다. 불필요하다고 생각되는 변경에 반대하는 경우, 공유 코드 소유권은 이러한 태도를 정당화하는 데 사용될 수 있습니다. "코드는 귀하의 것이 아니며 팀의 것입니다!" 검토자가 토론에 대해 공개적이지 않고 자극을 받고 모든 비용으로 솔루션을 푸시하려고 시도하면 검토 자의 의도가 정직하지 않은시기를 알 수 있습니다. 기본적으로 그들은 이미 결정했으며 더 이상의 논의는 시간 낭비입니다.
IMO 옵션 1과 2는 정직한 검토 자의 표시로, 도움을 주려고 노력하고, 업무를 존중하면서 무언가를 가르치려고 노력하며, 또한 스스로 배우기에도 열려 있습니다. 이 시나리오에서는 리뷰어로부터 건설적인 피드백을받을 때 너무 자랑스러워하지 않습니다.
옵션 3, 4는 몇 가지 강력한 게임이 진행되고 있음을 시사합니다. 중요한 것은 내 방식이든 아니든, 두 가지를 모두 만족시키는 훌륭한 솔루션을 찾는 것이 아니라 중요합니다. 이는 검토 자의 자아와 관련이있을 수 있지만 사고 방식을 따르지 않는 코드를 이해할 수없는 경우와 관련이 있습니다. 그것들은 일반적으로 그들에게 친숙하지 않은 코드에 의해 혼란을 겪고 전체 코드베이스에 길을 가길 원합니다.
상황 3과 4가 너무 자주 발생하면 팀 작업이 매우 불쾌해질 수 있습니다. 그런 상황에서 나는 팀을 떠날 것을 고려할 것입니다.