- 이제 3년차 개발자가 되어가는 시점인 지금 바빠 죽을 것 같은 시기에 피토하면서 이렇게 TDD 강의를 듣는 이유
(이렇게 정리해야 나중에는 제대로된 개발을 할 수 있을 것 같다. )
- 일단 개발한 다음에 테스트 코드를 구현하자 절대 되지 않는다..
> 회사에서 일단 가만히 냅두질 않는다. 테스크 다 끝내면 바로 다음 테스크를 줄 것이고 그 중 반은 기존 코드와 기능이나 데이터가 연관되어 있는 테스크일 것이다. 그럼 더욱더 테스트 코드는 멀어진다.
- 코드 구조도 달라진다. Production code가 중심이 된 개발 코드와 Test code가 중심이 된 개발 코드는 구조적으로 달라질 수 밖에 없음
(사실 둘다 극한의 객체지향적으로 개발하면 달라질 것은 없음. 필요한 function의 차이만 있을 뿐)
TDD를 해야 테스트 코드를 구현함에 있어 시간도 단축된다. Product code를 먼저 짜면 결국 다시 손을 봐야하는 상황이 생김
- API 개발할 때는 BDD 기반으로 작성하였지만 엄연히 따지면 이것도 BDD는 아님;;; Production code를 먼저 작성하고 이게 제대로 돌아가나 test code를 작성한거니깐
- 무엇보다 가장 큰 이유가 위의 이유들로 방치되면 지금 우리 플젝처럼 요단강을 건너버린다.
우리 프로젝트가 전신인 Basecamp 모델이 있고 거기서 새로 만들고 있는데 그러다보니 안 쓰는 app과 모델이 많음
내가 생각날 때마다 지우고 정리하는데 엮여있는 코드가 너무 많고 지금 코드에선 안 쓸꺼라 생각했던 function을 쓰고 있는 부분이 너무 많아 예상치 못 한 곳에서 에러가 터짐.. 그래서 코드 개선은 고사하고 코드 정리조차 쉽지 않은 상황임
- 잘 만든 웹페이지나 어플을 뜯어보면 솔직히 엄청난 기능이나 로직이 없음. 하지만 잘 만들었다 혹은 잘 나가는 이유는 유기적으로 변하는 트렌드나 니즈에 맞춰 변화했기 때문이고 이 바탕에 바로 유지보수가 쉬운, 클린 코드가 있다.
지금 우리 회사에서 기획이 좀 바뀌었다고 새로 개발을 해야한다면 그 이유에 대한 고찰이 필요함
'Backend 언어 > NextStep TDD' 카테고리의 다른 글
2주차 Q&A (0) | 2020.11.04 |
---|---|
step2 PR 리뷰 (0) | 2020.11.02 |