[우테코5기] 프리코스 모바일 1주차 회고록

sehyonii·2022년 11월 15일
0

우아한 테크코스

목록 보기
1/3

1주차 과제를 진행하면서 어려웠던 점이나 피드백을 통해 배웠던 점을 기록하고 싶어 작성하는 회고록

프리코스 1주차

과제 repositoy를 fork, clone해서 7개의 문제의 기능, 프로그래밍, 과제 진행 요구사항을 모두 만족하도록 구현한 뒤 pull request를 통해 과제를 제출한다.

어려웠던 점

1. 기능 목록을 만들고, 기능 단위로 커밋해라.

프로젝트를 진행하거나, 알고리즘 문제를 풀 때, 기능을 항상 머리속으로만 생각해서 빠뜨리는 부분이 있거나 헷갈리는 부분이 생길 때가 많았다. 처음으로 기능 목록을 작성해봤기 때문에 머리속에 생각해놓은 기능들을 적어내기가 쉽지 않았고 기능을 세분화하는 게 어렵게 느껴졌다. 커밋도 기능 여러개를 묶어서 같이 했던 때가 많았었기 때문에 기능 단위의 커밋도 어려웠다.

2. 리팩토링

내가 진행했던 예전 프로젝트 코드를 보면 이게 무슨 기능을 위해 만들어졌는지 이해하기도 쉽지 않았고 누군가에게 나의 코드를 설명하는 것도 어려웠다. 이 때까지 프로젝트를 만들 때, 클린한 코드로 구현하기 보다는 기능만 구현되면 된다는 식으로 코드를 작성했었다. 그래서 이번 과제를 진행하면서 리팩토링 과정을 계속 반복하는게 어려웠다.

3. git

저장소를 fork하고 나중에 과제를 pull request 하는 과정은 익숙하지 않았다. 그냥 git을 제대로 사용해본 적이 없었고 공부를 해본 적이 없었다. commit 메시지는 프로젝트 할 때 큰 단위로만 작성해서 제대로 된 작성방법은 알지 못했고 브랜치에 대한 개념도 몰랐다. 그래서 과제에서 git을 사용하는게 어려웠다.

피드백을 통해 고칠 점

1. 이름을 통해 의도를 드러낸다.

나 자신, 다른 개발자와의 소통을 위해 가장 중요한 활동 중의 하나가 좋은 이름 짓기이다. 변수 이름, 함수(메서드) 이름, 클래스 이름을 짓는데 시간을 투자하라. 이름을 통해 변수의 역할, 함수의 역할, 클래스의 역할에 대한 의도를 드러내기 위해 노력하라.

피드백을 받고 코드를 보니 변수 명을 고려할 때 시간을 들이지 않고 작성했었다. 변수명을 카멜 표기법으로 작성해야 하는데 스네이크 표기법으로 작성을 했고 의도를 알기 어려운 변수나 함수명을 작성한 경우도 많았다. 다음 과제에서는 다 고려해서 시간을 들여 작성해야겠다.

2. Kotlin에서 제공하는 API를 적극 활용한다

함수(메서드)를 직접 구현하기 전에 Kotlin API에서 제공하는 기능인지 검색을 먼저 해본다.
Kotlin API에서 제공하지 않을 경우 직접 구현한다

Kotlin 언어가 아직 부족해 api를 적극 활용하지 못했던 것 같다. Kotlin 공부를 통해 고쳐나가야겠다.

느낀점

과제를 하면서 요구사항에 맞게 기능 목록을 만들고 나니까 어떤 기능을 구현해야 하는지 정리가 쉬웠고 구현을 명확하게 할 수 있다는 점이 좋았다. 목록을 구현해놓고 보니 기능 단위의 커밋은 어렵지 않게 할 수 있었다.
피드백을 통해 고칠점을 깨달았고 그 부분을 잘 고쳐서 다음 과제에서 좀 더 발전된 코드로 문제를 해결하고 싶다.

0개의 댓글