<aside> 💡

PR 컨벤션 제안 - 29cm PR 컨벤션

핵심: 리뷰어 친화적인 PR

제목

문장 형태로 조건 + 변화의 방식으로 제목을 정합니다. 아래는 그 예시들입니다. 복잡한 변화라면 아주 긴 제목을 사용하셔도 무방합니다.

첫 기능 개발때는 변화보다는 구현한 내용을 작성?

배경

작업의 배경을 적어주세요

작업 내용 (왜? 를 담음)

테스트 방법

PR 리뷰어가 이 PR의 변경사항을 확인할 수 있는 방법을 서술합니다. 의도하는 테스트 결과도 같이 서술하면 더 좋습니다.

리뷰 노트

구현 시 고민이었던 점들 혹은 특정 부분에 대한 의도가 있었다면 PR 리뷰의 이해를 돕기 위해 서술합니다. 또한 리뷰어에게 특정 부분에 대한 집중 혹은 코멘트를 요청하는 경우에도 작성합니다.

</aside>

제목:  
문장 형태로 `조건 + 변화`의 방식으로 제목을 정합니다. 아래는 그 예시들입니다. 복잡한 변화라면 아주 긴 제목을 사용하셔도 무방합니다.
- 좋아요 상품이 미노출 상태인 경우 좋아요를 취소할 수 있도록 합니다.
- 프로필 화면에서 좋아요 버튼을 누를 시 종종 모든 셀이 사라지는 문제를 해결합니다.
단순 기능 구현이라면 구현한 내용을 작성해주세요.

# 배경
*작업의 배경을 적어주세요*
- 피그마 디자인 가이드
- PR과 관련된 이슈
- 관련이 있는 PR 링크

# 작업 내용
- how 보다는 why에 대해서 작성합니다. 만약 로직이 복잡한 경우에만 how의 작성을 고려할 수 있습니다.
- 두괄식으로 작성한 후 why에 대해 작성합니다.
- `PR 작성 이유`와 `어떤 변경이 있었는지`를 포함합니다. PR에 많은 변경사항이 있을 경우 클래스들의 구조나 동작 등 자세하게 작성하는 경우도 있습니다.
- 구현 결과 스크린샷 혹은 GIF를 첨부합니다.
  - 화면 전환이나 인터랙션이 있는 경우에는 GIF, 정적인 화면이라면 스크린샷을 첨부합니다.
  - 리뷰어가 직접 실행하지 않고도 변경에 대해 이해할 수 있으면 가장 좋습니다.

# 테스트 방법
PR 리뷰어가 이 PR의 변경사항을 확인할 수 있는 방법을 서술합니다. 의도하는 테스트 결과도 같이 서술하면 더 좋습니다.

# 리뷰 노트
구현 시 고민이었던 점들 혹은 특정 부분에 대한 의도가 있었다면 PR 리뷰의 이해를 돕기 위해 서술합니다. 또한 리뷰어에게 특정 부분에 대한 집중 혹은 코멘트를 요청하는 경우에도 작성합니다.

리뷰 규칙

https://blog.banksalad.com/tech/banksalad-code-review-culture/

<aside> 💡

커뮤니케이션 비용을 줄이기 위한 Pn 룰

우리는 상대방과 대화를 할 때, ‘말’이라는 언어적 표현 외에도 ‘표정’, ‘손짓’ 등의 비언어적 표현도 적극적으로 활용합니다. 온라인으로 코드 리뷰를 진행하는 경우 ‘글’ 로만 생각, 감정을 포함한 의견을 전달하기 때문에 전달력이 상대적으로 부족하고, 이로 인해 가벼운 농담이 상대방에게 진지한 이야기로 전달되는 상황이 연출되어 Blocker 가 될 수도 있습니다.

뱅크샐러드 기술 조직은 코드 리뷰의 코멘트에 Pn 룰을 사용하여 리뷰어가 코멘트를 강조하고 싶은 정도를 표현합니다.

리뷰어는 PR의 내용이 서비스에 중대한 오류를 발생할 수 있는 가능성을 잠재하고 있는 등 중대한 코드 수정이 반드시 필요하다고 판단되는 경우, P1 태그를 통해 리뷰 요청자에게 수정을 요청합니다. 리뷰 요청자는 p1 태그에 대해 리뷰어의 요청을 반영하거나, 반영할 수 없는 합리적인 의견을 통해 리뷰어를 설득할 수 있어야 합니다.

작성자는 P2에 대해 수용하거나 만약 수용할 수 없는 상황이라면 적합한 의견을 들어 토론할 것을 권장합니다.

작성자는 P3에 대해 수용하거나 만약 수용할 수 없는 상황이라면 반영할 수 없는 이유를 들어 설명하거나 다음에 반영할 계획을 명시적으로(JIRA 티켓 등으로) 표현할 것을 권장합니다. Request changes 가 아닌 Comment 와 함께 사용됩니다.

작성자는 P4에 대해서는 아무런 의견을 달지 않고 무시해도 괜찮습니다. 해당 의견을 반영하는 게 좋을지 고민해 보는 정도면 충분합니다.

작성자는 P5에 대해 아무런 의견을 달지 않고 무시해도 괜찮습니다.

FYI) Pn 룰은 뱅크샐러드에서 성장하는 회사에서 커뮤니케이션은 가장 큰 비용이라는 문제의식에서 이를 해결하기 위한 문화를 배경으로 탄생했습니다. Pn 룰은 코드 리뷰 외에도 슬랙 등 텍스트로 커뮤니케이션을 하는 곳에서도 활용하고 있습니다

</aside>