우아한테크코스 5기 프리코스 3주차 회고록

60jong·2022년 11월 25일
0

우아한테크코스

목록 보기
5/7


3주차 과제를 제출하고 4주차 과제까지 제출한 뒤, 다소 시간이 지난 뒤에 3주차 과제에 대한 회고록을 적게 됐다.

3주차 목표

3주차 프리코스를 통해 내가 성장한 부분은 무엇인가에 제대로 대답이 떠오르지 않았다. 조금은 반성해야겠다고 생각이 들었다. 기능 분류서를 작성할 때, 기능과 더불어 객체 - 메서드 명까지 같이 작성하려고 한 부분에서 많은 고민에 의해 개발 속도가 많이 느렸고, 그에 따라 막막함이 주로 다가왔다. 그래서 다음 주차부터는 처음부터 모든 모델링을 하고 개발을 시작하기 보다, 기능 분류와 개발을 동시에 진행하는 방식으로 바꿔야겠다고 생각이 들었다.

3주차에서 주어진 공통 목표는 클래스(객체)를 분리하는 연습도메인 로직에 대한 단위 테스트 작성하는 연습이었다. 객체를 분리하는 연습은 프리코스 1주차부터 많은 고민을 했던 부분이라 꾸준히 고민을 이어가며 성장할 수 있음에 좋았다. 도메인 로직에 대한 단위 테스트 연습은 함수마다 테스트하는 것이 맞는지, 기능 단위로 테스트하는 것이 좋은지 고민이 많았다.

객체를 분리하는 과정은 언제나 어려운 것 같다. 기능을 메서드로 구현할지, 새로운 객체를 만들지의 기준이 아직 잡히지 않아서, 객체의 관심사를 생각보다 보수적으로 생각하며 분리하고 있는데, 그러다보니 너무 오버 프로그래밍을 하고 있다는 생각이 들기도 했다. 하지만 데이터베이스 중심이 아닌 정말 객체를 중심으로 개발을 하는 것이 너무 즐겁다. 객체를 의인화 시켜 제 3자의 관점에서 이야기를 적어가듯이 개발하는 것이 너무 재밌다.

이런 객체 지향적인 개발을 이제서야 공부하기 시작한 것이 아쉽다. 몸에 배어버린 기존의 개발 습관에 의해 사고를 바꾸어가는 것이 조금 어렵기는 하다. 하지만 내가 객체지향에 흥미를 느끼는 것이 다행이라 느끼고 있고, 이를 잘 습득해 정말 좋은 객체지향 개발자가 되고 싶다.

단위 테스트를 진행하다 보니 왜 TDD가 생기게 됐는지, 테스트를 왜 그렇게 중요시하는지 조금은 알게 된 것 같다. 개발을 하다보니 '이 부분에 대해 테스트가 필요한 것 같은데...'라는 생각이 들기 마련인데, 테스트를 먼저 진행하고 개발을 한다면 확신을 가지고 개발을 할 수 있을 것 같았다. 그리고 개발을 할 때, 테스트를 좀 더 수월하게 진행하게 위한 개발을 할 필요가 있다고 느끼게 된 것 같다. 최대한 함수 단위로 개발을 진행해보고, 기회가 된다면 TDD를 익혀보고 싶다.

profile
울릉도에 별장 짓고 싶다

0개의 댓글