1.TDD(Test Driven Development)는 테스트 주도 개발의 약자로
일반적으로는 기획->디자인->개발->테스트 방식으로 진행하지만
기획->디자인->테스트 코드 작성 -> 코드 개발 방식으로 진행한다.
작업을 하면서 오류를 파악할 수 있으며
부분적인 단위 테스트가 가능하기 때문에
에러확인과 수정 시 문제점이 생길 경우 빠르게 포착할 수 있어 확장성이 증가하며
특정 동작(테스트)들에 검증된 코드를 보장받을 수 있지만
테스트 케이스 설계 자체에 들어가는 비용과
테스트를 제대로 기획하지 못하면 테스트를 하는 의미가 없다는 점 때문에
테스트가 제대로 작성되었는지에 대한 고려가 필요한 점 등의 단점이 있다.
결론적으로 단기적이고 구조가 단순한 일회용일수록 테스트가 필요없지만
장기간 유지보수가 필요하거나 수정이 자주 들어갈수록
테스트케이스 생성을 위한 비용보다 이점이 커지기 때문에
비교를 통해 사용 여부를 결정해야 한다.
(1).백준 5751 Head or Tail은 승 패를 0과 1을 통해 구분해
문자열로 결과를 출력하는 문제였다.
filter로 0 또는 1을 나눈 다음 length로 갯수를 구해도 되지만
추가적인 배열 등의 이용은 데이터 손실이 있을 수 있기 때문에
for문으로 구현했다.
let input = `5
0 0 1 0 1
6
0 0 0 0 0 1
0`.split('\n')
let result = []
for(let i = 1 ; i < input.length ; i+=2){
let matchArr = input[i].split(' ').map(Number)
let maryScore = 0
let johnScore = 0
for(let j = 0 ; j < matchArr.length ; j++){
if(matchArr[j]){
johnScore++
}
else{
maryScore++
}
}
result.push(`Mary won ${maryScore} times and John won ${johnScore} times`)
}
console.log(result.join('\n'))

'회고' 카테고리의 다른 글
| [취업준비일지] - 73 (0) | 2023.01.01 |
|---|---|
| [취업준비일지] - 72 (0) | 2022.12.31 |
| [취업준비일지] - 70 (1) | 2022.12.29 |
| [취업준비일지] - 69 (0) | 2022.12.28 |
| [취업준비일지] - 68 (0) | 2022.12.27 |
