드디어 1주차 과제를 제출했다.
제출하기 전에 정말 꼼꼼히 살펴보며 코드 수정 싸이클을 몇 번이나 돌렸는지 기억도 안난다.
하지만 정말 싸이클을 돌릴 때마다 각 문제별로 자잘한 수정사항들이 자꾸 생기고, 거슬리는 것들이 자꾸만 생겨 리팩토링의 반복이었다.
그래도 확실히 수정을 할수록 다듬어져가는 코드를 보니, 스스로 깔끔하다는 느낌과 코드가 완성되어간다는 느낌을 받았다.
현재 타인이 짠 코드를 분석하며 이해하는 공부를 하는 중이다. 동시에 1주차 과제를 하며 어떻게 타인이 이해하기 쉽게 짤 수 있을까 고민하며 과제를 완료하고 다시 타인의 코드를 보고 나니, 프로그램의 규모가 커질수록 코드를 깔끔하게 타인이 보았을 때 이해하기 쉽도록 짜는 것이 정말 중요하구나라는 것을 느꼈다.
그리고 기능별로 커밋하는 것이 번거로웠다. 그리고 정말 많이 신경을 쓴 부분이다. 왜냐하면 나는 관련 기능을 한번 구현하면 끝을 보고 나서 커밋을 하는 기존 습관이기 때문이다. 이렇게 하는 이유에 대해 고민을 해본 결과, git을 사용하는 이유는 한글 파일 임시저장 같은 것이 아닌, 변경사항을 추적 및 관리하기 위한 VCS라는 것을 생각하게 되었다. 따라서 기능별로 커밋 하는 것이 git 사용 목적에 충실하게 따르는 일이라고 생각이 들었다.
동시에 기존에 얕게 알고 있었던 커밋 컨벤션에 대해 조금이나마 깊게 알게 되었다.
slack과 PR을 통해 여러 사람들이 푼 흔적을 살펴보았다. 가장 기억에 남는 것은, 자바 스트림과 정규표현식으로 코드를 깔끔하게 풀어내는 것이었다. 당분간 이 부분도 공부를 해야겠구나는 생각이 든다.
그래도 오랜만에 코드의 품질에 대해 고민하며 정말 개발하는 참맛을 오랜만에 느끼게 된 것 같아 너무 즐거운 한 주였다. 그리고 역시 프로그래밍은 한 번에 뽷! 보다 꾸준히가 중요하다고 느꼈다.
잘보고갑니다!