지난 일주일은 3일간의 페어 프로그래밍을 진행한 시기였다.
이번 페어 프로그래밍에서 여러가지로 느낀점이 많아서 그 내용을 정리해보고자한다.
1. 적극적인 소통
이번 페어와 나는 둘 다 스프링을 활용한 프로젝트 경험이 있는 상태였다.
페어는 전공자이기도 해서 나보다는 알고있는 범위와 깊이가 더 많았다.
그러다보니 이번 과제는 예상보다도 더 빠르게 진행할 수 있었다.
게다가 페어 프로그래밍하는 시간들이 정말정말 재밌고 빠르게 지나갔다.
왜 그랬을까 지금 생각해보면, '소통 방식' 때문이었던 것 같다.
분명히 페어가 나보다 알고있는 것들이 많음에도 불구하고 내 의견을 적극적으로 들어주었고,
내가 모르는 개념이 있으면 해당 부분을 친절하고 자세하게 설명해줬다.
나 또한 모르는 부분에 대해서 대충 넘어가는 것이 아니라 모르는것은 모른다고 솔직히 얘기했고,
필요한 경우에는 '이 부분은 조금 찾아보고 진행하자'는 식으로 협의하면서 진행했다.
그리고 서로 고민되는 부분이 있으면 주저 없이 얘기했다.
이런 과정을 거치니 코드를 구현하며 부딪히는 부분도 크게 없었다.
서로의 의견을 듣고 더 설득력 있는 방향으로 진행했다.
하루는 공휴일도 끼어있어서 재택으로 진행하기도 했는데 하다보니 저녁 11시가 넘은 시간까지 코딩을 하고 있었다.
혹시 나때문에 그만하고싶은데 그만하자고 못한건가..? 살짝 걱정하기도 했는데 다음날 얘기해보니 페어도 더 하려면 더 할수도 있었다고 했다.(다행)
2. 자신만의 코드 스타일
이전 회고에서도 계속해서 이야기하고있는 내용인데, 나는 아직 "내 스타일" 혹은 "내 기준"이 명확하지 않다.
"정답을 찾기 보다 상황에 따라 더 적절한 방식을 사용해야한다."라고 결론을 내려둔 상태였기 때문에 딱 나만의 스타일이라고 할 것이 없었다.
이런 구현 방식은 코드 컨벤션에도 영향을 줬다.
public, private 메서드가 있을 때 나열 순서는 어떻게 해야할까? public 메서드를 먼저 나열한 후 private은 하단에 몰아두어야할까? 아니면 private를 사용하는 public 메서드 아래에 바로 해당 private 메서드를 두어야할까?
if문들 사이에는 개행을 주어야할까? 패키지 분리는 어떻게 해야할까?
이런 질문들에 대해 이때까지 나는 '공식문서'에서 답을 찾으려 했었다.
그러나 관련된 명확한 결과를 얻지는 못했다. (혹시 아시는분 계시면 공유 부탁드려요...🙇🏻♀️)
페어와 코드 리팩토링을 하며 이런 부분에 대한 이야기를 나누게 되었는데,
내가 "상황에 따라 다르게 한다"고 얘기 했을 때 페어가 "컨벤션인데?"라는 말을 했다.
어떻게 생각해보면, 컨벤션이라는건 상황에 따라 바뀌는 것이 아니라 지켜야하는 규칙이다.
그런 의미에서 어느정도의 스스로의 규칙을 가지고 있는 것도 나쁘지 않겠다는 생각이 들었다.
이번주에 혼자 프로젝트를 진행해보면서, 페어와 작성했던 코드가 어떤지 다시 한 번 생각해보고
나의 스타일도 한번 찾아가보는 시간을 가지고자 한다.
'우아한테크코스 > 회고' 카테고리의 다른 글
[우아한테크코스] Lv. 2 - 5주차 회고: 아이스 브레이킹의 중요성 (0) | 2024.05.20 |
---|---|
[우아한테크코스] Lv. 2 - 4주차 회고: 학습 방법 찾기 (0) | 2024.05.13 |
[우아한테크코스] Lv. 2 - 2주차 회고: 본격적인 스프링 사용 (0) | 2024.04.29 |
[우아한테크코스] Lv. 2 - 1주차 회고: 새로운 시작 (0) | 2024.04.23 |
[우아한테크코스] Lv. 1 - 7, 8주차 회고: 레벨 종료 (0) | 2024.04.05 |