220222 - TIL

Suntory·2022년 2월 23일
0

TIL

목록 보기
34/57

✅ 한 일

💻 수행한 것들

  • 2주차 미션 2일차: 페어 프로그래밍 with Shine
    마찬가지로 TDD를 기반으로 미션을 수행했습니다. 로또 1단계 미션 요구사항을 만족하고 PR을 보내는 것을 목표로 작업하였습니다. 여자친구 졸업식에 참석하느라 오후 일정을 조금 소비했는데 Shine이 이해해주셔서 다행히 잘 마무리했습니다. 1단계 PR을 마치고 내일 2,3단계를 진행해야 할 것 같습니다.

  • 운영체제 강의 수강: 프로세스 관련 강의를 듣고 스터디 준비를 마쳤습니다.

  • 알고리즘 1문제 풀기: zzangmin이 갑자기 보내준 문제를 물었다가 1시간 30분을 날려서 TIL 적는걸 깜빡했습니다..ㅎㅎ
    문제의 문제

📝 배운 것들

테스트가 어려운 코드가 되는 이유

그룹 리뷰 중에 private 메서드가 많아서 테스트가 어렵다는 동료가 있었다. 미션을 할 때 비슷한 경험이 많았어서 왜 그럴까 생각해보니 객체가 너무 많은 로직을 들고 있는게 아닐까?라는 생각이 들었다.

결국 private 메서드는 객체 내부에서 로직을 쪼개놓은 단위인데, 중요 로직이 private으로 막혀있다는 건 그 객체의 책임을 다른 객체로 나눠야한다는 신호일 수 있다고 생각했다.

객체간의 협력을 통해 로직이 수행된다면, 협력을 위해 메시지를 보내고 받는 메서드는 public으로 열려있을 것이기 때문에 테스트가 가능해진다.

이후에 미션을 진행할 때도 테스트 가능한 코드를 짤 수 있도록 충분히 객체의 역할을 잘 나누는 연습을 해야겠다고 느꼈다.

💪 좋은 점

  • 페어 프로그래밍을 통해 좀 더 협업능력을 기를 수 있었다.
  • 테스트 하기 쉬운 코드에 대해서 공유해보면서 나만의 생각을 전달해보았다.

👀 아쉬운 점

  • 개인 일정으로 미션 시간에 참여하지 못했다.. shine께 미안합니다..

🗒 개선 방향

  • 미션에 좀 더 잘 참여해야겠다.
  • 테스트 용이한 코드가 되도록 private 메서드가 많아질때는 객체의 분리를 고려해보잨ㅋ
profile
천천히, 하지만 꾸준히 그리고 열심히

0개의 댓글