[프리코스 1주차] 백엔드 프리코스 1주차 회고록
2022. 11. 10. 00:51
728x90
PR 링크 : https://github.com/woowacourse-precourse/java-onboarding/pull/1412
[온보딩] 이승희 미션 제출합니다. by SEUNGHEE96 · Pull Request #1412 · woowacourse-precourse/java-onboarding
1주차 미션 제출합니다!
github.com
과제가 즐겁다!
기대하던 것 보다 더 재미있었다! 과제를 하는 것이 즐거울 것이라고 생각해본 적이 없는데, 프리코스가 이를 해냈다! ㅎㅎ 혼자서 알고리즘 공부를 할 때에는 리팩토링이라던가, 기능 단위의 커밋이 필요하지 않아 정답 맞추기에 급급했다. 남이 내 코드를 볼 일이 없다보니 완성도는 그렇게 떨어져갔다.
하지만 프리코스를 시작하면서 적은 문제를 풀더라도 완성도 있게 푸는 것의 즐거움을 느꼈다. 인터넷에 무수히 많은 우테코 후기와 프리코스 후기를 보면서 간절히 참여하고 싶다고 생각했는데 이번 기수부터 부족한 실력일지라도 프리코스는 함께 할 수 있어 매우 좋았다. 수많은 후기에서 프리코스만으로도 굉장한 성장을 할 수 있다고 사람들이 얘기했다. 처음에는 반신반의했고, 문제를 받아보았을 때는 첫 주라서 어렵지 않고 문제 수가 적구나라고 생각했다. 하지만 이번주 과제를 끝낸 지금 문제를 해결하는 것 자체는 극히 일부분이고, 수정하고 기록하는 과정에서 많은 성장을 할 수 있었고, 결과적으로 문제 7개는 온전히 저의 것으로 받아들일 수 있는 시간이 된 것 같다.
처음 써보는 툴들,
- Gradle: 이번 프리코스를 진행하면서 처음 사용해봤다.
Gradle이란 ? Maven을 대체할 수 있는 프로젝트 구성 관리 및 범용 빌드 툴이며 Ant Builder와 Groovy Script를 기반으로 구축되어 기존 Ant의 역할과 배포 스크립의 기능을 모두 사용가능하며 스프링부트와 안드로이드에서 사용된다.
처음에는 차이점을 크게 못느꼈지만, 써보니 가장 좋았던 점은 테스트 케이스를 추가할 수 있다는 것이었다. 나는 알고리즘 공부를 하면서 꽤 자주 예제만 맞추고 테스트 케이스를 틀리거나, 테스트케이스 다 맞고 한 개만 틀리곤 했다. 하지만 어떤 케이스인지 보여주지 않는 경우가 대부분이고 따로 수기로 추가하기도 어려워서(추가 기능은 있으나, 어떤 부분을 틀렸는지 모르는 상태로 그것을 걸러내는 테스트케이스를 추가하는 것은 사실상 불가능하다.) 어느 부분이 틀린 건지 감 잡기가 어려운 경우가 많았다.
이번에는 Slack을 통해 한 크루들이 테스트케이스를 공유해보자며 채널을 생성하셨다. 들어가보니 많은 분들이 테스트케이스를 공유해주셨고, 내 코드에서 틀린 부분을 정확히 인지하고 수정하기가 좋았다! - Slack: 대학교 재학시절 교양 수업에서 사용해본 적 있는 플랫폼이었다. 하지만 그 당시에는 교양 수업의 특성상 참여가 활발하지 않았고 학생들끼리 질의응답하기보다는 교수님의 공지용으로 쓰였다. 그래서 기존의 가상대학 공지 기능과 크게 다른 점을 못느꼈었다.
이번에는 다른 크루분들과 활발히 의논할 수 있는 창구가 생겨서 너무 좋았다. 특히 각자 필요한 채널을 생성할 수 있고, 원하는 사람만 참여할 수 있다는 점이 좋았다. 나 같은 경우는 테스트케이스와 백엔드 채널에 들어가있었는데, 우테코 전체 프리코스를 수용하면서도 각자의 특징에 맞춰 채널에 들어갈 수 있어서 좋았다. 또한 게시물 검색과 그 글에 달린 댓글까지 볼 수 있어서 내가 궁금한점이나 모르는 점을 물어보기전에 같은 질문에 대하여 이미 글을 남긴 흔적이 있는지 찾아보기도 수월해서 더욱 많은 의견을 내 것으로 만들기가 좋았다! - Github: 코딩스터디를 진행하면서 꾸준히 사용하고 있었지만 branch라는 기능은 따로 사용하지 않고 있었기 때문에 이번에 처음 써보면서 더욱 개념을 확고히 할 수 있어서 좋았다.
공부 방법 바꿔보기
- 리팩토링: 프리코스 첫 주차를 진행하면서 리팩토링이라는 단어를 처음 들어봤다. 그만큼 생소했지만 왜 다들 강조하는지 조금은 알게 되었다. 항상 아쉬움으로 남는 KDT 파이널 프로젝트는 지금 보면 손을 어디서부터 대야할지 전혀 알수 없는 스파게티 코드가 완성되어있다. 그런 코드에게 제일 필요한 것이 리팩토링이 아닐까 싶다.
프리코스 또한 내가 직접 푼 코드이기도 하고 어렵고 긴 코드가 아니라서 고칠 것이 없을 것이라고 생각했으나 보면 볼수록 간소화할 수 있는 부분이 보였고 성능을 개선할 수 있는 부분이 보였다. 문제 7개로 일주일 내내 공부하기에는 문제 양이 적지 않을까 했는데 전혀 아니었고, 공부를 하면 할수록 계속 공부할 것이 생기는 과정이 신기하고 재미있었다. - 커밋 메시지: 지금까지 깃을 개인 저장소처럼 써왔기 때문에 커밋을 나눠 하는 것의 필요성을 느끼지 못했는데 메시지 규칙을 찾아보면서 왜 커밋이 중요한지를 알게 되었다. 앞으로는 더욱 깔끔하고 알아보기 쉬운 커밋 방법을 찾아 내 것으로 만들고 싶고, 협업할 때에 동료가 내 코드를 쉽게 알아볼 수 있었으면 한다.
그 다음주, 2주차의 지향점
- 질의응답: 다른 분들에 비해 지식이 부족하여 지금까지 주로 물어보는 입장이었다. 코드 측면에서도 그렇고 툴에 관련해서도 그러했다. 다음주부터는 여전히 많이 물어보기도 하고 내가 아는 것을 모르는 크루가 있다면 적극적으로 아는 것을 나누며 함께 공부하고 싶다.
- 리팩토링: 이번주는 리팩토링 개념이 생소하여 처음에 감을 잘 잡지 못했다. 다음주부터는 적극적으로 테스트 케이스도 많이 추가하고 예외처리도 추가하며 코드를 견고히 짜고, 비어있는 부분이나 성능 개선할 부분을 발견하게 된다면 더 많이 리팩토링 해보고 싶다!
- 클린코드: 이번주에는 요구사항에 따로 명시되어 있지않아 지금 익숙한 방법으로 코드를 짜 보았다. 그러다 보니 들여쓰기가 많아지기도 하고 코드가 길어졌다. 다음주부터는 곧 나올 피드백을 수용하며 클린코딩을 지향하고 싶다!
'ETC > Diary' 카테고리의 다른 글
| [프리코스 4주차] 백엔드 프리코스 4주차 회고록 (0) | 2022.12.08 |
|---|---|
| [프리코스 3주차] 백엔드 프리코스 3주차 회고록 (1) | 2022.12.08 |
| [프리코스 2주차] 백엔드 프리코스 2주차 회고록 (0) | 2022.12.08 |
| [프리코스 2주차] 백엔드 프리코스 2주차 : 오류 및 새로운 것들 (0) | 2022.12.08 |
| [우테코 지원 후기] 비전공자 입문자가 우테코를 지원하기까지 (0) | 2022.11.09 |