본문 바로가기

공부/TDD7

[OKKYCON: 2018] 자바지기(박재성)- TDD 의식적으로 연습하기 의식적인 연습이란? 많은 연습은 역량을 보장하지 않는다. 그렇기에 온전히 집중하고 '의식적' 으로 행동할 것을 요구한다. 컴포트 존을 벗아난 지점에서 진행, 자신의 현재 능력을 살짝 넘어가는 작업을 지속적으로 시도한다. 명확하고 구체적인 목표를 가지고 진행한다. 피드백과 피드백에 따른 행동 변경을 수반한다. (코드리뷰, 짝 프로그래밍) 기존에 습득한 기술의 특정 부분을 집중적으로 개선함으로써 발전시키고, 수정하는 과정을 거친다. 자바 코드 컨벤션을 지키면서 프로그래밍한다. https://google.github.io/styleguide/javaguide.html indent(인덴트, 들여쓰기) depth를 3이 넘지 않도록 구현한다. while 문 안에 if문이 있으면 들여쓰기는 2이다. indent d.. 2020. 9. 20.
테스트 주도 개발 [10 - 17장] 다음에 할 일은 무엇인가?자주 건드리는 부분이 견고 하다면 가장자리, 즉 자주 바뀌지 않는 부분으로 흘러감에 따라 테스트는 더 듬성듬성 불규칙적이게 되고 디자인도 않 좋아지지만 안심할 수 있다.어떤 테스트들이 추가로 필요할까?때로는 실패해야 하는 테스트가 성공하는 경우가 있는데, 그럴 땐 그 이유를 찾아내야 한다. 또는 실패해야 하는 테스트가 실제로 실패하기도 하는데, 이때는 이를 이미 알려진 제한사항 또는 앞으로 해야 할 작업 등의 의미로 그 사실을 기록해둘 수도 있다. (히스토리를 쌓는다.)할 일 목록할 일 목록이 비었다면 그때까지 설계한 것을 검토하기에 적절한 시기다. 메타포(은유)설계 구조에 미치는 메타포의 엄청난 영향public interface Expression { Money reduce(B.. 2020. 9. 12.
테스트 주도 개발 [1 - 9장] TDD의 목적은 작동하는 깔끔한 코드를 얻는 것이다. 작동하는 깔끔한 코드를 얻는 것은 때로는 최고의 프로그래머들 조차 도달하기 힘든 목표고, 나같은 대부분의 평벙함 프로그래머들에게는 거의 불가능한 일이다. 그렇다면 나누어서 정복하자. 일단 '작동하는 깔끔한 코드'를 얻어야 한다는 전체 문제 중에서 '작동하는' 에 해당하는 부분을 먼저 해결한다. 그러고 나서 '깔끔한 코드' 부분을 해결하는 것이다. 요구사항 통화가 다른 두 금액을 더해서 주어진 환율에 맞게 변한 금액을 결과로 얻을 수 있어야 한다. 어떤 금액을 어떤 수에 곱한 금액을 결과로 얻을 수 있어야 한다. 할 일 목록 $5 + 10CHF = $10(환율이 2:1일 경우) $5 x 2 = $10 Dollar 부작용(side effect?) ... .. 2020. 9. 5.