<aside>
📌
참고 문서
https://graph-paper.tistory.com/192
https://meetup.nhncloud.com/posts/106
https://flight-developer-stroy.tistory.com/45
</aside>
Facts, Feelings, Findings, Future, Feedback
- Facts: 실제 일어난 일
- 결합도를 낮추려고 최대한 코드를 계속 수정했다.
- 시행착오를 여러 번 겪었다.
- cmd+B로 메서드의 명세를 꼼꼼하게 읽어봤다. 읽어보지 않아서 split()의 경우 사용을 잘못했었다.
- 테스트를 짜면서 코딩했었어야 했다.
- Feelings: 느낀 감정
- 가끔 머리에 정리가 되지 않아 뇌정지 왔던 순간이 온 것에 ‘내가 지금 뭐하지’하는 생각이 들었다.
- 테스트를 구현 완료 후에 하려니 힘들고, 생각치 못했던 엣지 케이스나 구현하지 않은 로직, 잘못 구현한 로직이 바로바로 눈에 들어왔다. 정말로 테스트를 작성하면서 ‘아 이거..’ 이런 식으로.
- Findings: 배운 점
- 처음 배우는 것은 머리로만 공부하지 말고, 또 노트북에 타이핑하지 말고 직접 수기로 작성하던 공부법을 사용하자.
- 1주차에
특히 기능을 구현하기 전에 기능 목록을 만들고, 기능 단위로 커밋 하는 방식으로 진행한다. 라는 부분을 읽었기에 적당히 설계만 하고 기능 구현을 했다. 근데, README.md를 어느 정도 작성하고, 테스트도 생각나는 것들은 작성한 후에 기능 구현과 테스트를 같이 하면서 개발해야겠다. 문제 찾는 것과 고치는 것에 시간이 더 걸린다.
- Future: 앞으로의 계획
- 종이에 배우는 것들은 끄적끄적 정리하면서 뇌가 더욱 활성화 되게끔, 밀도 있는 공부를 해야겠다.
- 행동강령을 정해서, 프로젝트를 진행할 때 어떤식으로 할 지 정리해야겠다.
지금 같은 경우는, “
프로젝트 시작 시, 입력과 출력에 대한 상세한 요구사항을 명시하고, 필요한 객체(도메인)들이 무엇이 있는지, 어떻게 설계할 지 구체적으로 설계한다. 그리고 생각나는 대로, 성공 테스트와 예외 테스트를 작성한 후 기능 구현과 유닛테스트를 진행하며 개발한다.”
- Feedback: 다른 사람에게 주거나 받은 피드백
- 결합도 낮추기, 객체 지향에 대해 아직 감을 잡은 게 아닌듯 하다.
- 시행착오 겪는 것 자체가 학습이다. 고생했으니 자신감 가지고 마음 아파하지 말고 머리 아파하자. 내일 다시 더욱 머리 아프게 공부해보자.