1주 차 과제는 알고리즘을 푸는 문제였다.
난이도가 엄청 높지는 않았지만,
단순하게 문제를 푸는데 목적을 두지 않고 클린 코드로 작성하려 하니 힘들었다.
기존에 문제를 풀 때는 변수명이나 메서드명을 단순하게 그때 풀고 끝이라는 생각을 하고 대충 지었다.
내가 기존에 작성했던 코드는 남이 봤을 때, 이해하기 어려웠을 것이라는 생각을 하였다.
그래서 모든 이름을 다 의미 있고, 알아보기 쉽게 표현하려 노력하였다.
메서드가 한 가지 일을 수행하도록 분할을 하였다.
이 방법을 사용하니, 나중에 리펙토링을 하려 할 때 매우 유용하였다.
분할을 하기 전 미리 어떠한 기능을 구현할지 나누어 작성한 다음 설계하니 더욱 편하였다.
가장 어려운 점은 인덴트를 최대한 적게 사용하는 것이었다.
기존의 코딩 방식과 달라서 이 부분에서 시간을 많이 사용하였다.
오히려 이러한 규칙 덕분에 여러 가지 문법을 알게 되고 스스로 공부도 많이 하는 시간이 되었다.
이제 곧 2주 차가 시작되는데 벌써부터 기대가 된다.
1주 차의 과제가 나에게 있어서 매우 재미있었고, 가치 있는 시간이었다.
기능을 구현할 때마다 커밋을 하니까 50개가 넘는 커밋을 하였다.
처음 완성은 약 30개의 커밋으로 끝났는데, 리펙토링으로 20개가량 더 커밋하였다.
그만큼 리펙토링이 중요하고, 신경 쓸 부분이 많은 것 같다.
열심히 코딩한 결과 1주 차는 잘 해낸 것 같다.
정말 많은 것을 배웠다.
2주 차도 힘내서 열심히 할 것이며,
더욱 성장할 것이다.
1주 차 미션이 끝남에 따라 내가 작성한 코드의 깃 링크를 걸어두었습니다.
부족한 부분은 피드백 부탁드립니다.
또한 저의 코드로 인해 얻어가는 것이 있길 바랍니다.
https://github.com/kimtaesoo99/java-onboarding/tree/kimtaesoo99
'활동' 카테고리의 다른 글
우아한테크코스 5기 - 2주차 후기 (0) | 2022.11.08 |
---|---|
교내 SW 프로그램 경진 대회 수상 및 후기 (1) | 2022.11.04 |
우아한테크코스5기 - 프리코스 시작전 다짐 (0) | 2022.10.26 |
[멘토링]스프링 Response만들기, 예외처리 추가 (0) | 2022.07.25 |
[멘토링]스프링 CRUD게시판 만들기 (0) | 2022.07.18 |