Post

TDD, 클린코드 with Java 18기 시작!!

TDD, 클린코드 with Java 18기 시작!!

과정에 참가한 계기

갑자기 바람이 분 것은 아니다. 해당 과정을 작년 초에 처음 알게되었는데, 그 때부터 해보고 싶었다. 나도 나름 깔끔하고 유지보수하기 좋은 코드를 지향한다. 처음 작성할 때에는 분명 메서드도 나누고 객체도 나누며 이 정도면 깔끔하겠지? 싶다가도 나중에 다시 보면 정말 냄새난다. 내 코드를 내가 봐도 냄새나는데 다른 개발자가 보면 어떨까 싶었다.

하지만 그 때는 내가 취준생이어서 돈도 없었기도 하고, 커리큘럼이 항시 오픈된 것이 아니라 기수별로 운영하기 때문에 하고싶어도 할 수 없었다.

사실 해당 과정에서 코드 리뷰가 없는 플레이그라운드 과정을 참가했었다. 한 번 해보는 것도 좋겠다 생각했는데, 코드리뷰없이 그냥 오로지 내 생각대로만 코딩을 하게 되니 어렵기만 하고 맞게 하고 있는 건 지도 알 수가 없어 초반에 그만두었었다.

아쉬음을 뒤로하고 다음 과정이 열리면 메일로 알려주는 서비스를 신청해두었는데, 얼마 전 그 메일이 온 것이었다! 안 그래도 켄트 벡의 TDD 독서 스터디를 하는 와중이었는데 둘을 동시에 가져가면 이론 공부 + 실전 적용이라는 시너지가 발생할 것 같아서 바로 신청했다.

TDD와 코드 리뷰

나는 실무에서 TDD는 고사하고 테스트코드 작성조차 하지 않는다. 테스트는 코드가 아닌 실제 서비스를 통해 각 시나리오를 단위테스트한다. 때문에, 무수히 많은 버그와 실수에 부딪힌다. 코딩 후 기도가 자연스러운 과정이다.

코드 리뷰 문화라도 있으면 조금 덜하겠지만, 그 마저도 없다. 내가 어떤 코드를 어떻게 작성하든 버그가 발생한 뒤에 그 문제점을 인지하고 디버깅 할 수 있다. 그러다보니 개발자로서 자신감과 자존감이 점점 낮아진다. 내 실수가 공공연하게 오픈될 뿐더러, 그에 따라 온갖 눈치와 질타를 받게된다.

만약 내가 처음부터 TDD와 코드리뷰 문화가 철저한 환경에서 개발했다면, 이들의 중요성과 필요성을 잘 몰랐을 것이다. 그냥 하라니까 하는 귀찮은 작업이라고 생각했을 지도 모른다. 하지만 이 작업들이 없는 환경에서 개발을 시작하여 내가 TDD와 코드 리뷰에 더 신경쓰게 되는 좋은 계기가 되었다고도 생각한다.

블로그에 무엇을 작성할 것인가?

이 커리큘럼을 신청한 이유는 코드 리뷰 단 하나라고 해도 과언이 아니다. 단 한번도 내 코드를 누군가가 검증해주고 조언해준 적이 없다. 따라서 TDD 그 자체의 이론적인 얘기나 과정 자체에 대한 상세한 로직 얘기는 하지 않으려고 한다. 그러한 내용은 이 과정을 이수한 수 많은 선배 개발자들이 블로그에 이쁘게 잘 포스팅 해놨을 것이다.

그렇다면 나는 무엇을 작성할 것인가?

내가 과정을 진행하면서 생긴 질문과 막히는 부분, 막히지 않았지만 리뷰어님들이 리뷰해주신 부분 위주로 작성하려고 한다.

특히 막히지 않았지만 작성된 부분이 중요하다고 생각한다. 이것은 내가 정말 메타인지가 안 된 것이기 때문에 좀 더 신경써야할 것이다.

This post is licensed under CC BY 4.0 by the author.