Taking baby-developer steps

2022.02.05. gnl multiple fd 호출 직접 테스트 완료, 동료평가 완료 - 통과! 본문

Logs/학습 log

2022.02.05. gnl multiple fd 호출 직접 테스트 완료, 동료평가 완료 - 통과!

Surin Lee 2022. 2. 6. 15:47

오늘 목표

  • gnl 직접 테스트
    • 2개 이상의 fd 값에 대하여 교차하여 호출하는 경우 정상작동 테스트
  • 동료평가 3번 완료
  • gnl 메인 + 보너스 통과하기

오늘 한 일

  • 2개 이상의 fd 값에 대하여 교차하여 호출하는 경우 정상작동 테스트

메인 함수를 작성해서 총 5개의 fd값을 open()함수를 통해 받아들인 후, 각각을 교차 호출하여 개별 호출에 대해서 오류 없이 정상 작동함을 확인하였다.

 

교차 호출의 결과

각각의 gnl 호출 결과 값은 ' |'로 구분해서 출력했다. null은 더이상 읽어들일 내용이 없을때 (eof에 도달했을 때) gnl이 정상적으로 반환하는 캐릭터 포인터 값이다.

  • 동료평가 3번 완료

1시간 간격으로 총 3번의 동료 평가를 완료 하였다. 이번 평가를 해주신 분들은 이미 get_next_line 과제를 수행하셨던 분들이셔서 subject에 대한 이해가 깊으셔서 문제 설명부터 할 필요는 없었다. 이번 평가때는 헤더파일에서 지정한 매크로및 include한 외부 헤더부터 설명을 하고, 가장 메인이 되는 get_next_line.c 소스 파일에서 get_next_line()함수부터 설명을 해나갔다. norm의 하나의 함수가 25 lines 이상 일수 없다는 규칙 때문에 오랜시간 다듬고 다듬다 보니 가장 메인 부분인 get_next_line()함수가 간단해 졌는데, 그로 인해 내가 구현한 함수의 플로우 및 의도가 명확하게 보였던거 같다. 평가자로서 평가에 진행해주신 동료분들 모두 가독성을 잘 챙겼다고 칭찬을 해주셨는데 어찌나 뿌듯하고 감사하던지..! 과제 최종 제출 전, get_a_line을 더 line을 줄일 아이디어가 생각나지 않아, 아쉽게도 get_next_line()함수의 가장 끝 부분에 if문을 따로 빼둔 것이 아쉬웠었는데, 동료분들이 평가를 해주시며 get_a_lined의 line을 5줄이나(심지어 가독성에 문제를 주지 않으면서 줄일 수 있는 아이디어였다!) 줄일 아이디어를 같이 생각해내주셔서, 평가 후에 get_next_line()에는 좀더 메인 플로우만 들어가게 되었다! 함께 코드를 꼼꼼히 봐주시는 동료분들의 소중함을 다시 한번 느끼게 되는 평가 시간이었다.

동료분들의 소중한 피드백으로 인해 더욱 불필요한 부분이 없어진 나의 get_next_line()함수 완성본!

gnl 메인 + 보너스 통과 완료!


메모

계속 되는 refactoring을 거치면서도 뭔가 혼자서만 보다보면 굳어지는 생각 등에 의해 잘 못보는 부분들이 생기게 되는데,

동료평가를 통해 그런 굳어진 생각을 깰 수 있게 되는것 같다. 소중해.. 동료평가!

Comments