Facts
- 테스트 주도 개발로 배우는 객체 지향 설계와 실천 스터디를 끝냈습니다. 테스트 주도와 객체 지향으로 프로젝트가 어떻께 진행되어 나가는지 간접적으로 체험해 볼 수 있어서 좋았습니다.
- 안드로이드에 대한 공부를 시작했습니다. 안드로이드 테스팅에 관한 책과 그레이들에 대한 책을 읽으며 학습 중입니다. 오래전에 나온 책이라 기술적으로 많은 차이가 있어 부분 부분 읽고 정리해야겠습니다.
- 스터디에서 배운 테스트 주도 개발 흐름을 안드로이드 앱 개발에 적용하고 있습니다. 작은 기능을 갖는 애플리케이션이라 테스트를 쪼개기 힘들어서 그런지 아직 테스트 주도 개발에 대한 이해가 부족한건지 프로젝트 진행이 더딘 것 같습니다.
- 자료구조에 대해서 공부하고 있습니다. 강의를 통해서 트리를 학습했습니다. 코틀린으로 밀린 자료구조들을 구현을 해야할 것 같습니다.
Feelings
- 책에서 읽은 것 처럼 테스트 주도로 프로젝트를 이끄는 일이 쉽게 되지 않습니다. 스터디를 통해서 조언을 듣고 TDD주기에 강박되지 않으면서 프로젝트를 진행하고 있습니다. 이거 어떡하지 라는 마음으로 초조하게 진행하는 것보다 마음을 여유롭게 가지면서 의심스러운 부분(?)을 잘 정리해두고 조언을 구하는 것이 좋을 것 같습니다.
- 테스트를 하기 위해 사용자 케이스를 잘 분석하는 것이 중요하다는 생각이 들었습니다. 예전에 읽었던 유스케이스에 관한 포스팅을 다시 읽어보고 있는데 테스트와 유스케이스 BDD에 대한 기본 지식이 있으니 글이 새롭게 보입니다.
Findings
- 트리를 공부하고 있습니다. 학교 다닐 때 그냥 검색이 빠른 자료 구조로만 알고 있었는데 어떻게 동작하는지에 대해서 알게 되었습니다. 코틀린으로 구현해볼 예정입니다.
-
유스 케이스에 대한 포스팅을 읽고 저의 테스트 코드를 보니 고칠 부분이 여러 부분 있었습니다.
- 먼저 일관된 언어를 사용하고 있지 않았습니다. 비만도와 BMI수치를 계산하여 보여주는 애플리케이션인데 작성한 테스트에 비만도, BMI수치를 왔다 갔다 쓴 테스트가 있었습니다.
- 두 번째로 기술에 관한 세부 사항을 테스트에 표현하고 있었습니다. 애플리케이션이 현재는 사용자의 신장과 체중을 입력받고 계산하기 버튼을 클릭하면 비만도와 BMI수치를 보연주는 식으로 기획 되었는데 '버튼 클릭', '텍스트 필드에 신장과 체중 입력' 과 같은 내용이 포함되어 있었습니다.
- 안드로이드에서 어떻게 그레이들이 사용되는지 공부했습니다. 프로젝트 단위의 gradle에서 allprojects를 사용하면 현재 다른 모듈에 각각 있는 의존성을 한 번에 관리할 수 있다는 것을 배웠습니다. 현재 프로젝트에 있는 모듈들에 kotest를 각각 의존성 추가하여 사용하고 있었는데 allprojects 블로에 선언해서 사용해봐야겠습니다.
Future Action Plans
- 테스트 주도 개발과 객체 지향을 꾸준하게 안드로이드 프로젝트에 적용할 생각입니다.
- 테스트 주도 개발을 하면서 어떻게 클린 아키텍처를 만들 수 있을지 고민하고 공부해야겠습니다.
- -